1
0
mirror of https://github.com/php/doc-es.git synced 2026-03-23 23:12:09 +01:00

sync with EN files

This commit is contained in:
Julio Napurí
2021-02-27 12:11:03 -05:00
parent 65d0513d7f
commit 2a5170bbcc
75 changed files with 2191 additions and 7377 deletions

459
appendices/extensions.xml Normal file
View File

@@ -0,0 +1,459 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!--
DO NOT TRANSLATE THIS FILE! All the content that is displayed
on the extension categorization page in your translated manual
can be translated in extensions.ent
-->
<appendix xmlns="http://docbook.org/ns/docbook" xml:id="extensions">
&extcat.intro;
<section xml:id="extensions.alphabetical">
&extcat.alphabetical;
<itemizedlist>
<listitem><simpara><xref linkend="book.apache"/></simpara></listitem>
<listitem><simpara><xref linkend="book.apcu"/></simpara></listitem>
<listitem><simpara><xref linkend="book.array"/></simpara></listitem>
<listitem><simpara><xref linkend="book.bc"/></simpara></listitem>
<listitem><simpara><xref linkend="book.bzip2"/></simpara></listitem>
<listitem><simpara><xref linkend="book.calendar"/></simpara></listitem>
<listitem><simpara><xref linkend="book.classkit"/></simpara></listitem>
<listitem><simpara><xref linkend="book.classobj"/></simpara></listitem>
<listitem><simpara><xref linkend="book.com"/></simpara></listitem>
<listitem><simpara><xref linkend="book.csprng"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ctype"/></simpara></listitem>
<listitem><simpara><xref linkend="book.cubrid"/></simpara></listitem>
<listitem><simpara><xref linkend="book.curl"/></simpara></listitem>
<listitem><simpara><xref linkend="book.datetime"/></simpara></listitem>
<listitem><simpara><xref linkend="book.dba"/></simpara></listitem>
<listitem><simpara><xref linkend="book.dbase"/></simpara></listitem>
<listitem><simpara><xref linkend="book.dbplus"/></simpara></listitem>
<listitem><simpara><xref linkend="book.dio"/></simpara></listitem>
<listitem><simpara><xref linkend="book.dir"/></simpara></listitem>
<listitem><simpara><xref linkend="book.dom"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ds"/></simpara></listitem>
<listitem><simpara><xref linkend="book.eio"/></simpara></listitem>
<listitem><simpara><xref linkend="book.enchant"/></simpara></listitem>
<listitem><simpara><xref linkend="book.errorfunc"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ev"/></simpara></listitem>
<listitem><simpara><xref linkend="book.event"/></simpara></listitem>
<listitem><simpara><xref linkend="book.exec"/></simpara></listitem>
<listitem><simpara><xref linkend="book.exif"/></simpara></listitem>
<listitem><simpara><xref linkend="book.expect"/></simpara></listitem>
<listitem><simpara><xref linkend="book.fann"/></simpara></listitem>
<listitem><simpara><xref linkend="book.fann"/></simpara></listitem>
<listitem><simpara><xref linkend="book.fbsql"/></simpara></listitem>
<listitem><simpara><xref linkend="book.fdf"/></simpara></listitem>
<listitem><simpara><xref linkend="book.fileinfo"/></simpara></listitem>
<listitem><simpara><xref linkend="book.filepro"/></simpara></listitem>
<listitem><simpara><xref linkend="book.filesystem"/></simpara></listitem>
<listitem><simpara><xref linkend="book.filter"/></simpara></listitem>
<listitem><simpara><xref linkend="book.fpm"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ftp"/></simpara></listitem>
<listitem><simpara><xref linkend="book.funchand"/></simpara></listitem>
<listitem><simpara><xref linkend="book.gearman"/></simpara></listitem>
<listitem><simpara><xref linkend="book.gender"/></simpara></listitem>
<listitem><simpara><xref linkend="book.geoip"/></simpara></listitem>
<listitem><simpara><xref linkend="book.gettext"/></simpara></listitem>
<listitem><simpara><xref linkend="book.gmagick"/></simpara></listitem>
<listitem><simpara><xref linkend="book.gmp"/></simpara></listitem>
<listitem><simpara><xref linkend="book.gnupg"/></simpara></listitem>
<listitem><simpara><xref linkend="book.hash"/></simpara></listitem>
<listitem><simpara><xref linkend="book.hrtime"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ibase"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ibm-db2"/></simpara></listitem>
<listitem><simpara><xref linkend="book.iconv"/></simpara></listitem>
<listitem><simpara><xref linkend="book.image"/></simpara></listitem>
<listitem><simpara><xref linkend="book.imagick"/></simpara></listitem>
<listitem><simpara><xref linkend="book.imap"/></simpara></listitem>
<listitem><simpara><xref linkend="book.info"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ingres"/></simpara></listitem>
<listitem><simpara><xref linkend="book.inotify"/></simpara></listitem>
<listitem><simpara><xref linkend="book.intl"/></simpara></listitem>
<listitem><simpara><xref linkend="book.json"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ldap"/></simpara></listitem>
<listitem><simpara><xref linkend="book.libxml"/></simpara></listitem>
<listitem><simpara><xref linkend="book.lua"/></simpara></listitem>
<listitem><simpara><xref linkend="book.lzf"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mail"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mailparse"/></simpara></listitem>
<listitem><simpara><xref linkend="book.math"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mbstring"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mcrypt"/></simpara></listitem>
<listitem><simpara><xref linkend="book.memcache"/></simpara></listitem>
<listitem><simpara><xref linkend="book.memcached"/></simpara></listitem>
<listitem><simpara><xref linkend="book.memtrack"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mhash"/></simpara></listitem>
<listitem><simpara><xref linkend="book.misc"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mongo"/></simpara></listitem>
<listitem><simpara><xref linkend="book.bson"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mongodb"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mqseries"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysql"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysqli"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysqlnd"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysqlnd-memcache"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysqlnd-ms"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysqlnd-mux"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysqlnd-qc"/></simpara></listitem>
<listitem><simpara><xref linkend="book.mysqlnd-uh"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ncurses"/></simpara></listitem>
<listitem><simpara><xref linkend="book.network"/></simpara></listitem>
<listitem><simpara><xref linkend="book.oauth"/></simpara></listitem>
<listitem><simpara><xref linkend="book.oci8"/></simpara></listitem>
<listitem><simpara><xref linkend="book.opcache"/></simpara></listitem>
<listitem><simpara><xref linkend="book.openal"/></simpara></listitem>
<listitem><simpara><xref linkend="book.openssl"/></simpara></listitem>
<listitem><simpara><xref linkend="book.outcontrol"/></simpara></listitem>
<listitem><simpara><xref linkend="book.paradox"/></simpara></listitem>
<listitem><simpara><xref linkend="book.parle"/></simpara></listitem>
<listitem><simpara><xref linkend="book.password"/></simpara></listitem>
<listitem><simpara><xref linkend="book.pcntl"/></simpara></listitem>
<listitem><simpara><xref linkend="book.pcre"/></simpara></listitem>
<listitem><simpara><xref linkend="book.pdo"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-cubrid"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-dblib"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-firebird"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-ibm"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-informix"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-mysql"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-oci"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-odbc"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-pgsql"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-sqlite"/></simpara></listitem>
<listitem><simpara><xref linkend="ref.pdo-sqlsrv"/></simpara></listitem>
<listitem><simpara><xref linkend="book.pgsql"/></simpara></listitem>
<listitem><simpara><xref linkend="book.phar"/></simpara></listitem>
<listitem><simpara><xref linkend="book.posix"/></simpara></listitem>
<listitem><simpara><xref linkend="book.proctitle"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ps"/></simpara></listitem>
<listitem><simpara><xref linkend="book.pspell"/></simpara></listitem>
<listitem><simpara><xref linkend="book.pthreads"/></simpara></listitem>
<listitem><simpara><xref linkend="book.quickhash"/></simpara></listitem>
<listitem><simpara><xref linkend="book.radius"/></simpara></listitem>
<listitem><simpara><xref linkend="book.rar"/></simpara></listitem>
<listitem><simpara><xref linkend="book.readline"/></simpara></listitem>
<listitem><simpara><xref linkend="book.recode"/></simpara></listitem>
<listitem><simpara><xref linkend="book.reflection"/></simpara></listitem>
<listitem><simpara><xref linkend="book.regex"/></simpara></listitem>
<listitem><simpara><xref linkend="book.rrd"/></simpara></listitem>
<listitem><simpara><xref linkend="book.scoutapm"/></simpara></listitem>
<listitem><simpara><xref linkend="book.seaslog"/></simpara></listitem>
<listitem><simpara><xref linkend="book.sem"/></simpara></listitem>
<listitem><simpara><xref linkend="book.session"/></simpara></listitem>
<listitem><simpara><xref linkend="book.shmop"/></simpara></listitem>
<listitem><simpara><xref linkend="book.simplexml"/></simpara></listitem>
<listitem><simpara><xref linkend="book.snmp"/></simpara></listitem>
<listitem><simpara><xref linkend="book.soap"/></simpara></listitem>
<listitem><simpara><xref linkend="book.sockets"/></simpara></listitem>
<listitem><simpara><xref linkend="book.sodium"/></simpara></listitem>
<listitem><simpara><xref linkend="book.solr"/></simpara></listitem>
<listitem><simpara><xref linkend="book.sphinx"/></simpara></listitem>
<listitem><simpara><xref linkend="book.spl"/></simpara></listitem>
<listitem><simpara><xref linkend="book.sqlite3"/></simpara></listitem>
<listitem><simpara><xref linkend="book.sqlsrv"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ssdeep"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ssh2"/></simpara></listitem>
<listitem><simpara><xref linkend="book.stats"/></simpara></listitem>
<listitem><simpara><xref linkend="book.stomp"/></simpara></listitem>
<listitem><simpara><xref linkend="book.stream"/></simpara></listitem>
<listitem><simpara><xref linkend="book.strings"/></simpara></listitem>
<!-- <listitem><simpara><xref linkend="book.suhosin"/></simpara></listitem> -->
<listitem><simpara><xref linkend="book.svm"/></simpara></listitem>
<listitem><simpara><xref linkend="book.svn"/></simpara></listitem>
<listitem><simpara><xref linkend="book.swoole"/></simpara></listitem>
<listitem><simpara><xref linkend="book.sync"/></simpara></listitem>
<listitem><simpara><xref linkend="book.taint"/></simpara></listitem>
<listitem><simpara><xref linkend="book.tcpwrap"/></simpara></listitem>
<listitem><simpara><xref linkend="book.tidy"/></simpara></listitem>
<listitem><simpara><xref linkend="book.tokenizer"/></simpara></listitem>
<listitem><simpara><xref linkend="book.tokyo-tyrant"/></simpara></listitem>
<listitem><simpara><xref linkend="book.trader"/></simpara></listitem>
<listitem><simpara><xref linkend="book.ui"/></simpara></listitem>
<listitem><simpara><xref linkend="book.uodbc"/></simpara></listitem>
<listitem><simpara><xref linkend="book.uopz"/></simpara></listitem>
<listitem><simpara><xref linkend="book.url"/></simpara></listitem>
<listitem><simpara><xref linkend="book.v8js"/></simpara></listitem>
<listitem><simpara><xref linkend="book.var"/></simpara></listitem>
<listitem><simpara><xref linkend="book.varnish"/></simpara></listitem>
<listitem><simpara><xref linkend="book.wddx"/></simpara></listitem>
<listitem><simpara><xref linkend="book.weakref"/></simpara></listitem>
<listitem><simpara><xref linkend="book.win32service"/></simpara></listitem>
<listitem><simpara><xref linkend="book.wincache"/></simpara></listitem>
<listitem><simpara><xref linkend="book.wkhtmltox"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xattr"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xdiff"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xhprof"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xml"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xmldiff"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xmlreader"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xmlrpc"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xmlwriter"/></simpara></listitem>
<listitem><simpara><xref linkend="book.xsl"/></simpara></listitem>
<listitem><simpara><xref linkend="book.yaconf"/></simpara></listitem>
<listitem><simpara><xref linkend="book.yaf"/></simpara></listitem>
<listitem><simpara><xref linkend="book.yaml"/></simpara></listitem>
<listitem><simpara><xref linkend="book.yar"/></simpara></listitem>
<listitem><simpara><xref linkend="book.yaz"/></simpara></listitem>
<listitem><simpara><xref linkend="book.zip"/></simpara></listitem>
<listitem><simpara><xref linkend="book.zlib"/></simpara></listitem>
<listitem><simpara><xref linkend="book.zmq"/></simpara></listitem>
<listitem><simpara><xref linkend="book.zookeeper"/></simpara></listitem>
</itemizedlist>
</section>
<section xml:id="extensions.membership">
&extcat.membership;
<section xml:id="extensions.membership.core">
&extcat.membership.core;
<itemizedlist>
<listitem><para><xref linkend="book.array"/></para></listitem>
<listitem><para><xref linkend="book.classobj"/></para></listitem>
<listitem><para><xref linkend="book.csprng"/></para></listitem>
<listitem><para><xref linkend="book.datetime"/></para></listitem>
<listitem><para><xref linkend="book.dir"/></para></listitem>
<listitem><para><xref linkend="book.errorfunc"/></para></listitem>
<listitem><para><xref linkend="book.exec"/></para></listitem>
<listitem><para><xref linkend="book.filesystem"/></para></listitem>
<listitem><para><xref linkend="book.filter"/></para></listitem>
<listitem><para><xref linkend="book.funchand"/></para></listitem>
<listitem><para><xref linkend="book.hash"/></para></listitem>
<listitem><para><xref linkend="book.info"/></para></listitem>
<listitem><para><xref linkend="book.mail"/></para></listitem>
<listitem><para><xref linkend="book.math"/></para></listitem>
<listitem><para><xref linkend="book.misc"/></para></listitem>
<listitem><para><xref linkend="book.network"/></para></listitem>
<listitem><para><xref linkend="book.outcontrol"/></para></listitem>
<listitem><para><xref linkend="book.password"/></para></listitem>
<listitem><para><xref linkend="book.phar"/></para></listitem>
<listitem><para><xref linkend="book.reflection"/></para></listitem>
<listitem><para><xref linkend="book.regex"/></para></listitem>
<listitem><para><xref linkend="book.session"/></para></listitem>
<listitem><para><xref linkend="book.spl"/></para></listitem>
<listitem><para><xref linkend="book.stream"/></para></listitem>
<listitem><para><xref linkend="book.strings"/></para></listitem>
<listitem><para><xref linkend="book.tokenizer"/></para></listitem>
<listitem><para><xref linkend="book.url"/></para></listitem>
<listitem><para><xref linkend="book.var"/></para></listitem>
</itemizedlist>
</section>
<section xml:id="extensions.membership.bundled">
&extcat.membership.bundled;
<itemizedlist>
<listitem><para><xref linkend="book.apache"/></para></listitem>
<listitem><para><xref linkend="book.bc"/></para></listitem>
<listitem><para><xref linkend="book.calendar"/></para></listitem>
<listitem><para><xref linkend="book.com"/></para></listitem>
<listitem><para><xref linkend="book.ctype"/></para></listitem>
<listitem><para><xref linkend="book.dba"/></para></listitem>
<listitem><para><xref linkend="book.exif"/></para></listitem>
<listitem><para><xref linkend="book.fileinfo"/></para></listitem>
<listitem><para><xref linkend="book.ftp"/></para></listitem>
<listitem><para><xref linkend="book.iconv"/></para></listitem>
<listitem><para><xref linkend="book.image"/></para></listitem>
<listitem><para><xref linkend="book.intl"/></para></listitem>
<listitem><para><xref linkend="book.json"/></para></listitem>
<listitem><para><xref linkend="book.mbstring"/></para></listitem>
<listitem><para><xref linkend="book.opcache"/></para></listitem>
<listitem><para><xref linkend="book.pcntl"/></para></listitem>
<listitem><para><xref linkend="book.pcre"/></para></listitem>
<listitem><para><xref linkend="book.pdo"/></para></listitem>
<listitem><para><xref linkend="book.posix"/></para></listitem>
<listitem><para><xref linkend="book.sem"/></para></listitem>
<listitem><para><xref linkend="book.shmop"/></para></listitem>
<listitem><para><xref linkend="book.sockets"/></para></listitem>
<listitem><para><xref linkend="book.sqlite3"/></para></listitem>
<listitem><para><xref linkend="book.xmlrpc"/></para></listitem>
<listitem><para><xref linkend="book.zlib"/></para></listitem>
</itemizedlist>
</section>
<section xml:id="extensions.membership.external">
&extcat.membership.external;
<itemizedlist>
<listitem><para><xref linkend="book.bzip2"/></para></listitem>
<listitem><para><xref linkend="book.curl"/></para></listitem>
<listitem><para><xref linkend="book.dbase"/></para></listitem>
<listitem><para><xref linkend="book.dom"/></para></listitem>
<listitem><para><xref linkend="book.enchant"/></para></listitem>
<listitem><para><xref linkend="book.fbsql"/></para></listitem>
<listitem><para><xref linkend="book.gettext"/></para></listitem>
<listitem><para><xref linkend="book.gmp"/></para></listitem>
<listitem><para><xref linkend="book.ibase"/></para></listitem>
<listitem><para><xref linkend="book.imap"/></para></listitem>
<listitem><para><xref linkend="book.ldap"/></para></listitem>
<listitem><para><xref linkend="book.libxml"/></para></listitem>
<listitem><para><xref linkend="book.mcrypt"/></para></listitem>
<listitem><para><xref linkend="book.mhash"/></para></listitem>
<listitem><para><xref linkend="book.mysql"/></para></listitem>
<listitem><para><xref linkend="book.mysqli"/></para></listitem>
<listitem><para><xref linkend="book.mysqlnd"/></para></listitem>
<listitem><para><xref linkend="book.oci8"/></para></listitem>
<listitem><para><xref linkend="book.openssl"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-dblib"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-firebird"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-mysql"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-oci"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-odbc"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-pgsql"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-sqlite"/></para></listitem>
<listitem><para><xref linkend="book.pgsql"/></para></listitem>
<listitem><para><xref linkend="book.pspell"/></para></listitem>
<listitem><para><xref linkend="book.readline"/></para></listitem>
<listitem><para><xref linkend="book.recode"/></para></listitem>
<listitem><para><xref linkend="book.simplexml"/></para></listitem>
<listitem><para><xref linkend="book.snmp"/></para></listitem>
<listitem><para><xref linkend="book.soap"/></para></listitem>
<listitem><para><xref linkend="book.sodium"/></para></listitem>
<listitem><para><xref linkend="book.tidy"/></para></listitem>
<listitem><para><xref linkend="book.uodbc"/></para></listitem>
<listitem><para><xref linkend="book.wddx"/></para></listitem>
<listitem><para><xref linkend="book.xml"/></para></listitem>
<listitem><para><xref linkend="book.xmlreader"/></para></listitem>
<listitem><para><xref linkend="book.xmlwriter"/></para></listitem>
<listitem><para><xref linkend="book.xsl"/></para></listitem>
<listitem><para><xref linkend="book.zip"/></para></listitem>
</itemizedlist>
</section>
<section xml:id="extensions.membership.pecl">
&extcat.membership.pecl;
<itemizedlist>
<listitem><para><xref linkend="book.classkit"/></para></listitem>
<listitem><para><xref linkend="book.cubrid"/></para></listitem>
<listitem><para><xref linkend="book.dbplus"/></para></listitem>
<listitem><para><xref linkend="book.dio"/></para></listitem>
<listitem><para><xref linkend="book.eio"/></para></listitem>
<listitem><para><xref linkend="book.ev"/></para></listitem>
<listitem><para><xref linkend="book.event"/></para></listitem>
<listitem><para><xref linkend="book.expect"/></para></listitem>
<listitem><para><xref linkend="book.fdf"/></para></listitem>
<listitem><para><xref linkend="book.filepro"/></para></listitem>
<listitem><para><xref linkend="book.gearman"/></para></listitem>
<listitem><para><xref linkend="book.gender"/></para></listitem>
<listitem><para><xref linkend="book.geoip"/></para></listitem>
<listitem><para><xref linkend="book.gmagick"/></para></listitem>
<listitem><para><xref linkend="book.gnupg"/></para></listitem>
<listitem><para><xref linkend="book.ibm-db2"/></para></listitem>
<listitem><para><xref linkend="book.imagick"/></para></listitem>
<listitem><para><xref linkend="book.ingres"/></para></listitem>
<listitem><para><xref linkend="book.inotify"/></para></listitem>
<listitem><para><xref linkend="book.lua"/></para></listitem>
<listitem><para><xref linkend="book.luasandbox"/></para></listitem>
<listitem><para><xref linkend="book.lzf"/></para></listitem>
<listitem><para><xref linkend="book.mailparse"/></para></listitem>
<listitem><para><xref linkend="book.memcache"/></para></listitem>
<listitem><para><xref linkend="book.memcached"/></para></listitem>
<listitem><para><xref linkend="book.memtrack"/></para></listitem>
<listitem><para><xref linkend="book.mongo"/></para></listitem>
<listitem><para><xref linkend="book.mqseries"/></para></listitem>
<listitem><para><xref linkend="book.mysqlnd-memcache"/></para></listitem>
<listitem><para><xref linkend="book.mysqlnd-ms"/></para></listitem>
<listitem><para><xref linkend="book.mysqlnd-mux"/></para></listitem>
<listitem><para><xref linkend="book.mysqlnd-qc"/></para></listitem>
<listitem><para><xref linkend="book.mysqlnd-uh"/></para></listitem>
<listitem><para><xref linkend="book.ncurses"/></para></listitem>
<listitem><para><xref linkend="book.oauth"/></para></listitem>
<listitem><para><xref linkend="book.openal"/></para></listitem>
<listitem><para><xref linkend="book.paradox"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-cubrid"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-ibm"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-informix"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-sqlsrv"/></para></listitem>
<listitem><para><xref linkend="book.proctitle"/></para></listitem>
<listitem><para><xref linkend="book.ps"/></para></listitem>
<listitem><para><xref linkend="book.pthreads"/></para></listitem>
<listitem><para><xref linkend="book.quickhash"/></para></listitem>
<listitem><para><xref linkend="book.radius"/></para></listitem>
<listitem><para><xref linkend="book.rar"/></para></listitem>
<listitem><para><xref linkend="book.rrd"/></para></listitem>
<listitem><para><xref linkend="book.runkit7"/></para></listitem>
<listitem><para><xref linkend="book.scoutapm"/></para></listitem>
<listitem><para><xref linkend="book.seaslog"/></para></listitem>
<listitem><para><xref linkend="book.solr"/></para></listitem>
<listitem><para><xref linkend="book.sphinx"/></para></listitem>
<listitem><para><xref linkend="book.sqlsrv"/></para></listitem>
<listitem><para><xref linkend="book.ssdeep"/></para></listitem>
<listitem><para><xref linkend="book.ssh2"/></para></listitem>
<listitem><para><xref linkend="book.stats"/></para></listitem>
<listitem><para><xref linkend="book.stomp"/></para></listitem>
<listitem><para><xref linkend="book.swoole"/></para></listitem>
<listitem><para><xref linkend="book.svm"/></para></listitem>
<listitem><para><xref linkend="book.svn"/></para></listitem>
<listitem><para><xref linkend="book.taint"/></para></listitem>
<listitem><para><xref linkend="book.tcpwrap"/></para></listitem>
<listitem><para><xref linkend="book.tokyo-tyrant"/></para></listitem>
<listitem><para><xref linkend="book.trader"/></para></listitem>
<listitem><para><xref linkend="book.v8js"/></para></listitem>
<listitem><para><xref linkend="book.varnish"/></para></listitem>
<listitem><para><xref linkend="book.weakref"/></para></listitem>
<listitem><para><xref linkend="book.win32service"/></para></listitem>
<listitem><para><xref linkend="book.wincache"/></para></listitem>
<listitem><para><xref linkend="book.xattr"/></para></listitem>
<listitem><para><xref linkend="book.xdiff"/></para></listitem>
<listitem><para><xref linkend="book.xhprof"/></para></listitem>
<listitem><para><xref linkend="book.yaf"/></para></listitem>
<listitem><para><xref linkend="book.yaml"/></para></listitem>
<listitem><para><xref linkend="book.yaz"/></para></listitem>
<listitem><para><xref linkend="book.zookeeper"/></para></listitem>
</itemizedlist>
</section>
</section>
<section xml:id="extensions.state">
&extcat.state;
<section xml:id="extensions.state.deprecated">
&extcat.state.deprecated;
<itemizedlist>
<listitem><para><xref linkend="book.memtrack"/></para></listitem>
</itemizedlist>
</section>
<section xml:id="extensions.state.experimental">
&extcat.state.experimental;
<itemizedlist>
<listitem><para><xref linkend="book.dbplus"/></para></listitem>
<listitem><para><xref linkend="book.hash"/></para></listitem>
<listitem><para><xref linkend="book.imagick"/></para></listitem>
<listitem><para><xref linkend="book.ncurses"/></para></listitem>
<listitem><para><xref linkend="book.paradox"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-dblib"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-firebird"/></para></listitem>
<listitem><para><xref linkend="ref.pdo-oci"/></para></listitem>
<listitem><para><xref linkend="book.ps"/></para></listitem>
<listitem><para><xref linkend="book.xmlrpc"/></para></listitem>
</itemizedlist>
</section>
</section>
</appendix>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 027f187b3ed8cdec60db6f83baf8f62b536d1101 Maintainer: seros Status: ready -->
<!-- EN-Revision: 3e08a8aae657492bdcdc7c550099ddf072042fa9 Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: seros -->
<section xml:id="ini.core" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
@@ -701,13 +701,7 @@
<entry><link linkend="ini.auto-globals-jit">auto_globals_jit</link></entry>
<entry>"1"</entry>
<entry>PHP_INI_PERDIR</entry>
<entry>Disponible desde PHP 5.0.0.</entry>
</row>
<row>
<entry><link linkend="ini.register-globals">register_globals</link></entry>
<entry>"0"</entry>
<entry>PHP_INI_PERDIR</entry>
<entry>Eliminada en PHP 5.4.0.</entry>
<entry></entry>
</row>
<row>
<entry><link linkend="ini.register-argc-argv">register_argc_argv</link></entry>
@@ -819,21 +813,6 @@
<varname>$_COOKIE</varname>. Si se establece a "", las variables
&link.superglobals; no estarán disponibles.
</para>
<para>
Si la directiva obsoleta
<link linkend="ini.register-globals">register_globals</link>
está activada, entonces variables_order
también configura el orden en que las variables <literal>ENV</literal>,
<literal>GET</literal>, <literal>POST</literal>,
<literal>COOKIE</literal> y <literal>SERVER</literal>
son rellenadas en el ambito global. Por ejemplo, si variables_order
está establecido a <literal>"EGPCS"</literal>, register_globals está activada,
y <varname>$_GET['acción']</varname> y
<varname>$_POST['acción']</varname> están establecidos, entonces
<varname>$acción</varname> contendrá el valor de
<varname>$_POST['acción']</varname> ya que <literal>P</literal> está
después de <literal>G</literal> en el ejemplo que se muestra.
</para>
<warning>
<para>
En ambas SAPIs, CGI y FastCGI,
@@ -888,15 +867,6 @@
estas variables no son usadas en un script, el tener esta directiva activada
resultará en una mejora del rendimiento.
</para>
<para>
Las directivas PHP
<link linkend="ini.register-globals">register_globals</link>,
<link linkend="ini.register-long-arrays">register_long_arrays</link>,
y <link linkend="ini.register-argc-argv">register_argc_argv</link>
deben estar desactivadas para que esta directiva tenga efecto. Desde
PHP 5.1.3 no es necesario que esté desactivada <link
linkend="ini.register-argc-argv">register_argc_argv</link>.
</para>
<warning>
<para>
El uso de las variables SERVER y ENV se comprueba durante el tiempo de compilación,
@@ -908,43 +878,6 @@
</listitem>
</varlistentry>
<varlistentry xml:id="ini.register-globals">
<term>
<parameter>register_globals</parameter>
<type>boolean</type>
</term>
<listitem>
<para>
Si registrar o no las variables EGPCS (Entorno, GET,
POST, Cookie, Servidor) como variables globales.
</para>
<para>
A partir de <link xlink:href="&url.php.release4.2.0;">PHP 4.2.0</link>,
el valor predeterminado de esta directiva es <emphasis>off</emphasis>.
</para>
<para>
Para información relacionada,
por favor lea el capítulo de seguridad
<link linkend="security.globals">Utilizar register_globals</link>.
</para>
<para>
Por favor, observe que <systemitem role="directive">register_globals</systemitem>
no puede ser establecida en tiempo de ejecución (<function>ini_set</function>).
Aún así, puede usar &htaccess; si el servidor lo permite, tal como
se muestra abajo. Un ejemplo de una entrada de &htaccess;:
<userinput>php_flag register_globals off</userinput>.
</para>
<note>
<para>
<systemitem role="directive">register_globals</systemitem>
se ve afectada por la directiva
<link linkend="ini.variables-order">variables_order</link>.
</para>
</note>
&warn.deprecated.feature-5-3-0.removed-6-0-0;
</listitem>
</varlistentry>
<varlistentry xml:id="ini.register-argc-argv">
<term>
<parameter>register_argc_argv</parameter>
@@ -1283,6 +1216,18 @@
<entry>PHP_INI_SYSTEM</entry>
<entry></entry>
</row>
<row>
<entry><link linkend="ini.user-ini.cache-ttl">user_ini.cache_ttl</link></entry>
<entry>"300"</entry>
<entry>PHP_INI_SYSTEM</entry>
<entry></entry>
</row>
<row>
<entry><link linkend="ini.user-ini.filename">user_ini.filename</link></entry>
<entry>".user.ini"</entry>
<entry>PHP_INI_SYSTEM</entry>
<entry></entry>
</row>
<row>
<entry><link linkend="ini.extension-dir">extension_dir</link></entry>
<entry>"/path/to/php"</entry>
@@ -1549,6 +1494,28 @@ include_path = ".:${USER}/pear/php"
</listitem>
</varlistentry>
<varlistentry xml:id="ini.user-ini.cache-ttl">
<term>
<parameter>user_ini.cache_ttl</parameter>
<type>int</type>
</term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ini.user-ini.filename">
<term>
<parameter>user_ini.filename</parameter>
<type>string</type>
</term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ini.user-dir">
<term>
<parameter>user_dir</parameter>

File diff suppressed because it is too large Load Diff

393
appendices/license.xml Normal file
View File

@@ -0,0 +1,393 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- DO NOT TRANSLATE THIS FILE -->
<appendix xml:id="cc.license" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Creative Commons Attribution 3.0</title>
<simpara>
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.
</simpara>
<simpara>
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.
</simpara>
<simpara><emphasis>1. Definitions</emphasis></simpara>
<orderedlist numeration="loweralpha">
<listitem>
<simpara>
<emphasis>"Adaptation"</emphasis> 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.
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>"Collection"</emphasis> 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.
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>"Distribute"</emphasis> 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.
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>"Licensor"</emphasis> means the individual, individuals, entity or entities
that offer(s) the Work under the terms of this License.
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>"Work"</emphasis> 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.
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>"You"</emphasis> 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.
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>"Publicly Perform"</emphasis> 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.
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>"Reproduce"</emphasis> 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.
</simpara>
</listitem>
</orderedlist>
<simpara>
<emphasis>2. Fair Dealing Rights.</emphasis> 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.
</simpara>
<simpara>
<emphasis>3. License Grant.</emphasis> 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:
</simpara>
<orderedlist numeration="loweralpha">
<listitem>
<simpara>
to Reproduce the Work, to incorporate the Work into one or more Collections, and to
Reproduce the Work as incorporated in the Collections;
</simpara>
</listitem>
<listitem>
<simpara>
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.";
</simpara>
</listitem>
<listitem>
<simpara>
to Distribute and Publicly Perform the Work including as incorporated in Collections;
and,
</simpara>
</listitem>
<listitem>
<simpara>
to Distribute and Publicly Perform Adaptations.
</simpara>
</listitem>
<listitem>
<para>
For the avoidance of doubt:
<orderedlist numeration="upperroman">
<listitem>
<simpara>
<emphasis>Non-waivable Compulsory License Schemes.</emphasis> 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;
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>Waivable Compulsory License Schemes.</emphasis> 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,
</simpara>
</listitem>
<listitem>
<simpara>
<emphasis>Voluntary License Schemes.</emphasis> 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.
</simpara>
</listitem>
</orderedlist>
</para>
</listitem>
</orderedlist>
<simpara>
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.
</simpara>
<simpara>
<emphasis>4. Restrictions</emphasis>. The license granted in Section 3 above is
expressly made subject to and limited by the following restrictions:
</simpara>
<orderedlist numeration="loweralpha">
<listitem>
<simpara>
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.
</simpara>
</listitem>
<listitem>
<simpara>
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.
</simpara>
</listitem>
<listitem>
<simpara>
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.
</simpara>
</listitem>
</orderedlist>
<simpara><emphasis>5. Representations, Warranties and Disclaimer</emphasis></simpara>
<simpara>
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.
</simpara>
<simpara>
<emphasis>6. Limitation on Liability.</emphasis> 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.
</simpara>
<simpara><emphasis>7. Termination.</emphasis></simpara>
<orderedlist numeration="loweralpha">
<listitem>
<simpara>
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.
</simpara>
</listitem>
<listitem>
<simpara>
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.
</simpara>
</listitem>
</orderedlist>
<simpara><emphasis>8. Miscellaneous</emphasis></simpara>
<orderedlist numeration="loweralpha">
<listitem>
<simpara>
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.
</simpara>
</listitem>
<listitem>
<simpara>
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.
</simpara>
</listitem>
<listitem>
<simpara>
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.
</simpara>
</listitem>
<listitem>
<simpara>
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
</simpara>
</listitem>
<listitem>
<simpara>
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.
</simpara>
</listitem>
<listitem>
<simpara>
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.
</simpara>
</listitem>
</orderedlist>
</appendix>

View File

@@ -1,13 +1,17 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<reference xml:id="ref.dbx" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>&Functions; de dbx</title>
<!--
This file should only be present in the English doc tree. If you
copy it over to your translation tree you will be hunted down
relentlessly! You have been warned! :)
-->
&reference.dbx.entities.functions;
</reference>
<sect1 xml:id="reserved.constants" xmlns="http://docbook.org/ns/docbook">
<title>&ReservedConstants;</title>
&appendices.reserved.constants.core;
&appendices.reserved.constants.standard;
</sect1>
<!-- Keep this comment at the end of the file
Local variables:
@@ -25,7 +29,4 @@ sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: ca7fbbaddcf091178e666a6586f4181d6e429b4d Maintainer: seros Status: ready -->
<!-- EN-Revision: 3e08a8aae657492bdcdc7c550099ddf072042fa9 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<chapter xml:id="tutorial" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<info><title>Un tutorial sencillo</title></info>
<para>
A continuación, nos gustaría mostrarle lo esencial de PHP en un corto y
sencillo tutorial. Este documento solamente trata de la creación de páginas web
@@ -17,7 +17,7 @@
comunes y corrientes, y se pueden crear y editar de la misma manera
que normalmente se crean páginas HTML.
</para>
<section xml:id="tutorial.requirements">
<info><title>¿Qué necesito?</title></info>
<para>
@@ -58,7 +58,7 @@
xlink:href="&url.apt-get;">apt-get</link> para buscar paquetes para Debian..
</para>
</section>
<section xml:id="tutorial.firstpage">
<info><title>Su primera página con PHP</title></info>
<para>
@@ -137,7 +137,7 @@
información, lea la sección del manual titulada <link linkend="language.basic-syntax">
Sintaxis básica de PHP</link>.
</para>
<note>
<info><title>Una observación sobre los avances de línea</title></info>
<para>
@@ -153,7 +153,7 @@
del bloque de PHP.
</para>
</note>
<note>
<info><title>Una observación sobre los editores de texto</title></info>
<para>
@@ -165,7 +165,7 @@
con un editor que resalte la sintaxis puede ser de mucha ayuda.
</para>
</note>
<note>
<info><title>Una observación sobre los procesadores de texto</title></info>
<para>
@@ -175,7 +175,7 @@
como <emphasis>texto sin formato</emphasis>, o de lo contrario, PHP no será capaz de leerlo y ejecutarlo.
</para>
</note>
<note>
<info><title>Una observación sobre el Bloc de Notas de Windows</title></info>
<para>
@@ -189,7 +189,7 @@
opción "Todos los archivos (*.*)". Aquí puede escribir el nombre del fichero sin las comillas.
</para>
</note>
<para>
Ahora que ha creado un pequeño script de PHP que funciona correctamente, es
hora de crear el script de PHP más famoso: hacer una llamada a la
@@ -210,7 +210,7 @@
</example>
</para>
</section>
<section xml:id="tutorial.useful">
<info><title>Algo útil</title></info>
<para>
@@ -374,7 +374,7 @@ if (strpos($_SERVER['HTTP_USER_AGENT'], 'MSIE') !== FALSE) {
el string <literal>MSIE</literal> fue encontrada o no.
</para>
</section>
<section xml:id="tutorial.forms">
<info><title>Tratar con formularios</title></info>
<para>
@@ -455,7 +455,7 @@ Hola José. Usted tiene 22 años.
pequeña introducción a la manipulación de datos recibidos desde XForms</link>.
</para>
</section>
<section xml:id="tutorial.oldcode">
<info><title>Utilizar código antiguo en nuevas versiones de PHP</title></info>
<para>
@@ -485,7 +485,7 @@ Hola José. Usted tiene 22 años.
Las variables externas ya no son registradas en el ámbito global de forma
predeterminada. En otras palabras, a partir de PHP
<link xlink:href="&url.php.release4.2.0;">4.2.0</link>, la directiva de PHP
<link linkend="ini.register-globals">register_globals</link> está
<literal>register_globals</literal> está
desactivada (<emphasis>off</emphasis>) por defecto en &php.ini;. El mejor
método para acceder a estos valores es por medio de las variables superglobales
mencionadas anteriormente. Los scripts, libros y tutoriales antiguos podrían contar con que
@@ -501,7 +501,7 @@ Hola José. Usted tiene 22 años.
y los enlaces que incluye.
</para>
</section>
<section xml:id="tutorial.whatsnext">
<info><title>¿Y ahora qué?</title></info>
<para>

View File

@@ -1,6 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: lboshell Status: ready -->
<!-- EN-Revision: 3e08a8aae657492bdcdc7c550099ddf072042fa9 Maintainer: lboshell Status: ready -->
<!-- Reviewed: yes Maintainer: lboshell -->
<chapter xml:id="faq.misc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Preguntas Varias</title>
<titleabbrev>Preguntas Varias</titleabbrev>
@@ -80,131 +82,6 @@
</para>
</answer>
</qandaentry>
<qandaentry xml:id="faq.misc.arguments.references">
<question>
<para>
¿Qué significa un signo &amp; al lado de un argumento en la
declaración de una función, como p.ej. <function>asort</function>?
</para>
</question>
<answer>
<para>
Quiere decir que el argumento es <link
linkend="language.references.pass">pasado por referencia</link> y es
probable que la función modifique el argumento de acuerdo con la
documentación. Sólo puede pasar variables de este modo y no necesita
pasarlas con el signo &amp; en la llamada de la función (tal cosa es
considerada <link
linkend="ini.allow-call-time-pass-reference">obsoleta</link>).
</para>
</answer>
</qandaentry>
<qandaentry xml:id="faq.misc.registerglobals">
<question>
<para>
¿Cómo manejo el parámetro <literal>register_globals</literal>?
</para>
</question>
<answer>
<para>
Para información sobre las implicaciones de seguridad de
<literal>register_globals</literal>, lea el capítulo de seguridad
sobre el <link linkend="security.globals">Uso de
register_globals</link>.
</para>
<para>
Es recomendable usar <link
linkend="language.variables.superglobals">superglobales</link>, en
lugar de depender en la activación de
<literal>register_globals</literal>.
</para>
<para>
Si se encuentra en un servidor compartido con
<literal>register_globals</literal> desactivado y necesita usar
aplicaciones antiguas, que requieren que esta opción esté activada, o
se encuentra en algún servidor de hospedaje en donde esta
característica está habilitada, pero quisiera eliminar los riesgos de
seguridad, puede que necesite emular el valor opuesto en PHP. Siempre
es buena idea preguntar primero si es posible cambiar la opción de
alguna forma en la configuración de PHP, pero si no es posible,
entonces puede usar estos segmentos de compatibilidad.
</para>
<para>
<example>
<title>Emulación de Register Globals</title>
<para>
Esto emula el comportamiento de register_globals On. Si ha alterado
la directiva <link
linkend="ini.variables-order">variables_order</link>, considere
modificar <varname>$superglobales</varname> acordemente.
</para>
<programlisting role="php">
<![CDATA[
<?php
// Emular register_globals on
if (!ini_get('register_globals')) {
$superglobales = array($_SERVER, $_ENV,
$_FILES, $_COOKIE, $_POST, $_GET);
if (isset($_SESSION)) {
array_unshift($superglobales, $_SESSION);
}
foreach ($superglobales as $superglobal) {
extract($superglobal, EXTR_SKIP);
}
}
?>
]]>
</programlisting>
<para>
Esto emula register_globals Off. Tenga en cuenta que este código
debe ser llamado al comienzo absoluto de su script, o después de
<function>session_start</function>, si usa esa función para comenzar
su sesión.
</para>
<programlisting role="php">
<![CDATA[
<?php
// Emular register_globals off
function retirar_registros_GLOBALS()
{
if (!ini_get('register_globals')) {
return;
}
// Puede que desee cambiar esto por un error más amigable
if (isset($_REQUEST['GLOBALS']) || isset($_FILES['GLOBALS'])) {
die('Se ha detectado un intento de sobreescritura en GLOBALS');
}
// Variables que no deben ser eliminadas
$noEliminar = array('GLOBALS', '_GET',
'_POST', '_COOKIE',
'_REQUEST', '_SERVER',
'_ENV', '_FILES');
$entrada = array_merge($_GET, $_POST,
$_COOKIE, $_SERVER,
$_ENV, $_FILES,
isset($_SESSION) && is_array($_SESSION) ? $_SESSION : array());
foreach ($entrada as $c => $v) {
if (!in_array($c, $noEliminar) && isset($GLOBALS[$c])) {
unset($GLOBALS[$c]);
}
}
}
retirar_registros_GLOBALS();
?>
]]>
</programlisting>
</example>
</para>
</answer>
</qandaentry>
</qandaset>
</chapter>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: f029b664b8728bd5cbb697cb9a4409aea07cb36c Maintainer: seros Status: ready -->
<!-- EN-Revision: 3e08a8aae657492bdcdc7c550099ddf072042fa9 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<chapter xml:id="faq.using" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Utilizar PHP</title>
@@ -104,89 +104,6 @@ if (empty($vacío)) {
</answer>
</qandaentry>
<qandaentry xml:id="faq.using.stripslashes">
<question>
<para>
Todas mis " se convirtieron en \" y mis ' en \', ¿cómo puedo deshacerme
de todas esas barras no deseadas? ¿Cómo y por qué están ahí?
</para>
</question>
<answer>
<para>
Lo más probable es que esas barras invertidas existan porque la directiva de PHP
<link linkend="ini.magic-quotes-gpc">magic_quotes_gpc</link> está activada.
Esta es una característica antigua de PHP que debería deshabilitarse y no
usarse más. También se puede utilizar la función <function>stripslashes</function>
para eliminar las barras invertidas de un <type>string</type>.
</para>
&note.magicquotes.gpc;
</answer>
</qandaentry>
<qandaentry xml:id="faq.register-globals">
<question>
<para>
¿Cómo me afecta la directiva register_globals de PHP?
</para>
</question>
<answer>
&warn.deprecated.feature-5-3-0.removed-5-4-0;
<para>
En primer lugar, una explicación de lo que hace este ajuste ini.
Digamos que se está utilizando el siguiente URL:
<literal>http://example.com/foo.php?animal=cat</literal>
y en el fichero <filename>foo.php</filename> tuviéramos el siguiente
código PHP:
</para>
<para>
<programlisting role="php">
<![CDATA[
<?php
// Aquí es preferible usar $_GET
echo $_GET['animal'];
// Para que $animal exista, register_globlas debe estar activado
// NO HAGA ESTO
echo $animal;
// Esto se aplica a todas las variables, inclusve a $_SERVER
echo $_SERVER['PHP_SELF'];
// De nuevo, para que $PHP_SELF exista, register_globals debe estar activado
// NO HAGA ESTO
echo $PHP_SELF;
?>
]]>
</programlisting>
</para>
<para>
El código anterior demuestra cómo register_globals crea muchas
variables. Durante años, este tipo de código ha sido mal visto, y durante
años ha estado deshabilitado por defecto. Así que, aunque la mayoría de alojamientos
web deshabilitan register_globals, aun existen artículos, tutoriales y libros
desactualizados que requieren que esté habilitado. Actúe en consecuencia.
</para>
<para>
Véase también los siguientes recursos para más información:
<simplelist>
<member>La directiva <link linkend="ini.register-globals">register_globals</link></member>
<member>El <link linkend="security.globals">capítulo de seguridad acerca de register globals</link></member>
<member><link linkend="language.variables.external">Manejo de variables externas</link></member>
<member>Usar <link linkend="language.variables.superglobals">superglobals</link> en su lugar</member>
</simplelist>
</para>
<note>
<para>
En el ejemplo anterior, usamos un <acronym>URL</acronym> que contenía un
QUERY_STRING. El paso de información como esta se hace a través de una solicitud
GET de HTTP, y es esta la razón por la que se usa la superglobal <varname>$_GET</varname>.
</para>
</note>
</answer>
</qandaentry>
<qandaentry xml:id="faq.using.wrong-order">
<question>
<para>
@@ -421,25 +338,9 @@ foreach ($cabeceras as $nombre => $contenido) {
</question>
<answer>
<para>
Es importante saber que la directiva de PHP <link
linkend="ini.register-globals">register_globals</link> también afecta
a variables de servidor y de entorno. Cuando register_globals = off (el
valor por defecto desde PHP 4.2.0), <varname>$DOCUMENT_ROOT</varname>
no existirá. En su lugar, se debe usar <varname>$_SERVER['DOCUMENT_ROOT']
</varname>. Si register_globals = on, las variables
<varname>$DOCUMENT_ROOT</varname> y
<varname>$GLOBALS['DOCUMENT_ROOT']</varname> también existirán.
Utilice <varname>$_SERVER['DOCUMENT_ROOT']</varname> y
<varname>$_SERVER['HTTP_REFERER']</varname> en su lugar.
</para>
<para>
Si se está seguro de que register_globals = on y se pregunta por qué
<varname>$DOCUMENT_ROOT</varname> no está disponible dentro de las funciones,
es porque son como las demás variables, requiriendo dentro
de la función <literal>global $DOCUMENT_ROOT</literal>.
Véase también la página del manual sobre
<link linkend="language.variables.scope">ámbito de las variables</link>.
Es preferible codificar con register_globals = off.
</para>
</answer>
</qandaentry>

View File

@@ -4,7 +4,7 @@
<!-- Reviewed: yes Maintainer: seros -->
<chapter xml:id="features.cookies" xmlns="http://docbook.org/ns/docbook">
<title>'Cookies'</title>
<para>
PHP tiene soporte para las «cookies» de <acronym>HTTP</acronym> de forma transparente. Las cookies son un
mecanismo por el que se almacenan datos en el navegador remoto para monitorizar
@@ -17,7 +17,7 @@
para retrasar la salida del script hasta que se haya decidido si establecer o no alguna cookie o
enviar cualquier otra cabecera.
</para>
<para>
Algunas cookies enviadas desde el cliente serán incluidas automáticamente
en el array autoglobal <varname>$_COOKIE</varname>
@@ -25,20 +25,13 @@
contiene "C". Para asignar varios valores a una sola cookie,
simplemente se debe agregar <literal>[]</literal> al nombre de la cookie.
</para>
<para>
Dependiendo de <link linkend="ini.register-globals">register_globals</link>,
se pueden crear variables normales de PHP a partir de cookies. Sin embargo, no se
recomienda esta práctica ya que esta característica a menudo está desactivada por
motivos de seguridad.
</para>
<para>
Para más detalles, incluyendo notas sobre errores de los navegadores, véanse las
funciones <function>setcookie</function> y
<function>setrawcookie</function>.
</para>
</chapter>
<!-- Keep this comment at the end of the file

View File

@@ -1,10 +1,10 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: c6a7285cd26508d879a84f3a8dc1a3d5fc8e73f4 Maintainer: seros Status: ready -->
<!-- EN-Revision: 3e08a8aae657492bdcdc7c550099ddf072042fa9 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<chapter xml:id="features.file-upload" xmlns="http://docbook.org/ns/docbook">
<title>Subida de ficheros</title>
<sect1 xml:id="features.file-upload.post-method">
<title>Subida con el método POST</title>
<simpara>
@@ -17,7 +17,7 @@
PHP es capaz de recibir subidas de ficheros de cualquier navegador
compatible con el RFC-1867.
</simpara>
<note>
<title>Nota sobre configuraciones relacionadas</title>
<para>
@@ -29,7 +29,7 @@
de &php.ini;
</para>
</note>
<para>
PHP también admite el método PUT para subir ficheros tal y como lo
utilizan los clientes <productname>Netscape Composer</productname> y
@@ -37,7 +37,7 @@
linkend="features.file-upload.put-method">Soporte para el
método PUT</link> para más detalles.
</para>
<para>
<example>
<title>Formulario para la subida de ficheros</title>
@@ -65,7 +65,7 @@
El campo oculto <literal>MAX_FILE_SIZE</literal> (medido en bytes) debe
preceder al campo de entrada del fichero, siendo su valor el tamaño de fichero máximo aceptado por PHP.
Se debe utilizar siempre este elemento del formulario, ya que evita a los usuarios la molestia de
esperar a que un fichero grande sea transferido sólo para descubrir que falló la transferencia
esperar a que un fichero grande sea transferido sólo para descubrir que falló la transferencia
porque era demasiado grande. Hay que tener en cuenta que engañar a esta configuración en el
lado del navegador es muy fácil; nunca dependa de que los ficheros que tengan un tamaño mayor
sean bloqueados por esta característica. Es simplemente una característica conventiene para
@@ -74,14 +74,14 @@
</para>
</example>
</para>
<note>
<para>
Asegúrese de que el formulario de subida de ficheros tiene el atributo <literal>enctype="multipart/form-data"</literal>
o de lo contrario la subida de ficheros no funcionará.
</para>
</note>
<para>
El array global <varname>$_FILES</varname> contendrá toda la información de los los ficheros subidos.
Su contenido en el formulario del ejemplo es el siguiente. Observe que se asume el empleo del
@@ -136,7 +136,7 @@
</varlistentry>
</variablelist>
</para>
<para>
Por defecto, los ficheros se almacenan en el directorio temporal predeterminado
del servidor, a menos que se haya indicado otra ubicaicón con la directiva <link
@@ -247,7 +247,7 @@ foreach ($_FILES["imágenes"]["error"] as $clave => $error) {
linkend="session.upload-progress">Progreso de subida en sesiones</link>.
</para>
</sect1>
<sect1 xml:id="features.file-upload.errors">
<title>Explicación de los mensajes de error</title>
<simpara>
@@ -332,7 +332,7 @@ foreach ($_FILES["imágenes"]["error"] as $clave => $error) {
</variablelist>
</para>
</sect1>
<sect1 xml:id="features.file-upload.common-pitfalls">
<title>Dificultades comunes</title>
<simpara>
@@ -406,7 +406,7 @@ foreach ($_FILES["imágenes"]["error"] as $clave => $error) {
variable de formulario (mediante un nombre de <literal>input</literal> como <literal>foo[]</literal>).
</simpara>
</sect1>
<sect1 xml:id="features.file-upload.multiple">
<title>Subida de varios ficheros</title>
<simpara>
@@ -438,13 +438,8 @@ foreach ($_FILES["imágenes"]["error"] as $clave => $error) {
Cuando se envía el formulario de arriba, se inicializarán los arrays
<varname>$_FILES['fichero_usuario']</varname>,
<varname>$_FILES['fichero_usuario']['name']</varname> y
<varname>$_FILES['fichero_usuario']['size']</varname>
(al igual que en <varname>$HTTP_POST_FILES</varname> para las versiones de PHP anteriores
a la 4.1.0).
Cuando
<link linkend="ini.register-globals">register_globals</link> está activado, las globales para los ficheros
subidos también se inicializan. Cada uno de estos será un array indexado
numéricamente con los valores correspondientes a los ficheros enviados.
<varname>$_FILES['fichero_usuario']['size']</varname> serán
inicializados.
</simpara>
<simpara>
Por ejemplo, suponga que se envían los nombres de fichero
@@ -474,7 +469,7 @@ foreach ($_FILES["imágenes"]["error"] as $clave => $error) {
</simpara>
</warning>
</sect1>
<sect1 xml:id="features.file-upload.put-method">
<title>Soporte para el método PUT</title>
<para>
@@ -550,7 +545,7 @@ fclose($datosPUT);
</example>
</para>
</sect1>
<sect1 xml:id="features.file-upload.errors.seealso">
&reftitle.seealso;
<para>
@@ -559,7 +554,7 @@ fclose($datosPUT);
</simplelist>
</para>
</sect1>
</chapter>
<!-- Keep this comment at the end of the file

View File

@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: d082313568cd8c1a78fa4beaa58f29ba0fe72797 Maintainer: seros Status: ready -->
<!-- EN-Revision: e443388d4249fea383d6ec2d1a338be220cf95ee Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: seros -->
<chapter xml:id="configuration" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Configuración en tiempo de ejecución</title>
<sect1 xml:id="configuration.file">
<title>El fichero de configuración</title>
<simpara>
El fichero de configuración (&php.ini;)
es leído al arrancar PHP. En las versiones en que PHP funciona como módulo de servidor,
@@ -138,7 +138,7 @@ include_path = ".;c:\php\lib"
</para>
<sect2 xml:id="configuration.file.scan">
<title>Directorios de búsqueda</title>
<para>
Es posible configurar PHP para que busque ficheros .ini en un directorio
después de leer &php.ini;. Esto se puede realizar durante la compilación estableciento la
@@ -146,7 +146,7 @@ include_path = ".;c:\php\lib"
PHP 5.2.0 y posteriores, el directorio de búsqueda puede ser sobrescrito durante la ejecución
estableciendo la vairable de entorno <varname>PHP_INI_SCAN_DIR</varname>.
</para>
<para>
Es posible buscar en varios directorios separándolos con el
separador de rutas específico de cada plataforma (<literal>;</literal> en Windows, NetWare
@@ -156,7 +156,7 @@ include_path = ".;c:\php\lib"
también buscará en el directorio dado durante la compilación mediante
<option role="configure">--with-config-file-scan-dir</option>.
</para>
<para>
PHP buscará dentro de cada directorio todos los ficheros que finalicen en
<literal>.ini</literal> en orden alfabético. Se puede obtener una lista
@@ -164,7 +164,7 @@ include_path = ".;c:\php\lib"
<function>php_ini_scanned_files</function>, o ejecutando PHP con la
opción <option>--ini</option>.
</para>
<informalexample>
<screen>
<![CDATA[
@@ -191,7 +191,7 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
</sect2>
<sect2 xml:id="configuration.file.changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
@@ -234,10 +234,10 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
</para>
</sect2>
</sect1>
<sect1 xml:id="configuration.file.per-user">
<title>Ficheros .user.ini</title>
<simpara>
A partir de PHP 5.3.0 se incluye soporte para ficheros de configuración INI
a nivel de directorios. Estos ficheros <emphasis>solo</emphasis> los procesa
@@ -245,10 +245,10 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
Si está usando Apache, use los ficheros &htaccess; para lograr el mismo
efecto.
</simpara>
<simpara>
Además del fichero &php.ini; principal, PHP explora cada directorio en busca de
ficheros INI, empezando por el directorio del fichero PHP solicitado, y
ficheros INI, empezando por el directorio del fichero PHP solicitado, y
continuando hasta el directorio raíz de documentos (tal y como esté establecido en
<varname>$_SERVER['DOCUMENT_ROOT']</varname>). En el caso de que el fichero PHP se encuentre
fuera del directorio raíz de documentos, sólo se explorará su directorio.
@@ -259,33 +259,29 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
<constant>PHP_INI_PERDIR</constant> y
<constant>PHP_INI_USER</constant>.
</simpara>
<simpara>
Las dos nuevas directivas INI,
<literal>user_ini.filename</literal> y
<literal>user_ini.cache_ttl</literal>
<!--
<link linkend="ini.user-ini.filename">user_ini.filename</link> and
<link linkend="ini.user-ini.cache-ttl">user_ini.cache_ttl</link>
-->
<link linkend="ini.user-ini.filename">user_ini.filename</link> y
<link linkend="ini.user-ini.cache-ttl">user_ini.cache_ttl</link>
controlan el uso de los ficheros INI de usuarios.
</simpara>
<simpara>
<literal>user_ini.filename</literal> establece el nombre del fichero que PHP buscará
<link linkend="ini.user-ini.filename">user_ini.filename</link> establece el nombre del fichero que PHP buscará
en cada directorio; si se establece un string vacío, PHP no realizará ninguna búsqueda.
El nombre por omisión es <literal>.user.ini</literal>.
</simpara>
<simpara>
<literal>user_ini.cache_ttl</literal> controla con qué frecuencia se releen los ficheros
INI de usuario. El valor por omisión es 300 segundos (5 minutos).
</simpara>
</sect1>
<sect1 xml:id="configuration.changes.modes">
<title>Dónde se puede realizar un ajuste de configuración</title>
<para>
Estos modos determinan cuándo y dónde se debe o no asignar una directiva
de PHP, y cada directiva del manual hace referencia a uno de estos
@@ -293,9 +289,9 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
usando <function>ini_set</function>, mientras que otros requieren hacerlo en
&php.ini; o en &httpd.conf;.
</para>
<para>
Por ejemplo, el ajuste
Por ejemplo, el ajuste
<link linkend="ini.output-buffering">output_buffering</link>
es <literal>PHP_INI_PERDIR</literal> por tanto no puede establecerse usando
<function>ini_set</function>. Sin embargo, la directiva
@@ -303,7 +299,7 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
<literal>PHP_INI_ALL</literal> por tanto se puede establecer en cualquier lugar,
incluso con <function>ini_set</function>.
</para>
<para>
<table>
<title>Definición de los modos PHP_INI_*</title>
@@ -343,10 +339,10 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
</table>
</para>
</sect1>
<sect1 xml:id="configuration.changes">
<title>Cómo cambiar los ajustes de configuración</title>
<sect2 xml:id="configuration.changes.apache">
<title>Ejecutar PHP como un módulo de Apache</title>
<simpara>
@@ -355,16 +351,16 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
de Apache (p.ej. &httpd.conf;) y en los ficheros &htaccess;. Se necesitarán
los privilegios "AllowOverride Options" o "AllowOverride All" para poder hacerlo.
</simpara>
<para>
Existen varias directivas de Apache que permiten
cambiar la configuración de PHP desde los propios ficheros de configuración
de Apache. Para un listado las directivas que son
<constant>PHP_INI_ALL</constant>, <constant>PHP_INI_PERDIR</constant>,
o <constant>PHP_INI_SYSTEM</constant>, consulte el apéndice de la
de Apache. Para un listado las directivas que son
<constant>PHP_INI_ALL</constant>, <constant>PHP_INI_PERDIR</constant>,
o <constant>PHP_INI_SYSTEM</constant>, consulte el apéndice de la
<link linkend="ini.list">Lista de directivas de php.ini</link>.
</para>
<para>
<variablelist>
<varlistentry>
@@ -455,22 +451,22 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
<para>
Las constantes de PHP no existen fuera de PHP. Por ejemplo, en
&httpd.conf; no se pueden usar constantes de PHP
tales como <constant>E_ALL</constant> o <constant>E_NOTICE</constant>
para establecer la directiva <link linkend="ini.error-reporting">error_reporting</link>
tales como <constant>E_ALL</constant> o <constant>E_NOTICE</constant>
para establecer la directiva <link linkend="ini.error-reporting">error_reporting</link>
puesto que no tendrán ningún significado y se evaluarán como
<emphasis>0</emphasis>. Use en su lugar la máscara de bits asociada.
Estas constantes sí pueden ser usadas en &php.ini;
</para>
</caution>
</sect2>
<sect2 xml:id="configuration.changes.windows">
<title>Cambiar la configuración de PHP a través del registro de Windows</title>
<simpara>
Cuando se ejecuta PHP en Windows, se pueden modificar los valores
de configuración a nivel de directorio usando el registro de Windows.
Los valores de configuración se almacenan en la clave de registro
<literal>HKLM\SOFTWARE\PHP\Per Directory Values</literal>,
<literal>HKLM\SOFTWARE\PHP\Per Directory Values</literal>,
en las subclaves correspondientes a los nombres de ruta. Por ejemplo, los valores
de configuración para el directorio <literal>c:\inetpub\wwwroot</literal>
se almacenarían en la clave <literal>HKLM\SOFTWARE\PHP\Per Directory
@@ -484,7 +480,7 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
con este método, mientras que los valores de <constant>PHP_INI_PERDIR</constant> no.
</simpara>
</sect2>
<sect2 xml:id="configuration.changes.other">
<title>Otras interfaces a PHP</title>
<para>
@@ -502,7 +498,7 @@ $ PHP_INI_SCAN_DIR=/usr/local/etc/php.d: php
</para>
</sect2>
</sect1>
</chapter>
<!-- Keep this comment at the end of the file

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: f7eec8e460993235c050632502bc84d4c077cd17 Maintainer: jorgeolaya Status: ready -->
<!-- EN-Revision: f1b211f5c87d97a1a636c0022e701db18fb73eff Maintainer: jorgeolaya Status: ready -->
<!-- Reviewed: yes Maintainer: julionc -->
<sect2 xml:id="install.windows.legacy.extensions" xmlns="http://docbook.org/ns/docbook">
<title>Instalación de extensiones en Windows</title>
@@ -155,11 +155,6 @@ extension=php_bz2.dll
<entry>Funciones <link linkend="book.dbase">dBase</link> </entry>
<entry>Ninguna</entry>
</row>
<row>
<entry>php_dbx.dll</entry>
<entry>Funciones <link linkend="book.dbx">dbx</link></entry>
<entry></entry>
</row>
<row>
<entry>php_exif.dll</entry>
<entry>Funciones<link linkend="book.exif">EXIF</link></entry>
@@ -258,11 +253,6 @@ extension=php_bz2.dll
<entry>Funciones <link linkend="book.mhash">Mhash</link></entry>
<entry>Requiere: <filename>libmhash.dll</filename> (incluido)</entry>
</row>
<row>
<entry>php_mime_magic.dll</entry>
<entry>Funciones <link linkend="book.mime-magic">Mimetype</link></entry>
<entry>Requiere: <filename>magic.mime</filename> (incluido)</entry>
</row>
<row>
<entry>php_mysql.dll</entry>
<entry>Funciones <link linkend="book.mysql">MySQL</link></entry>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 227c9c797eb2ea920aa9b3fb8d46ef3ecec860ae Maintainer: seros Status: ready -->
<!-- EN-Revision: 3e08a8aae657492bdcdc7c550099ddf072042fa9 Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: seros -->
<!-- Not used in EN anymore -->
@@ -85,7 +85,7 @@ usar una semilla para usar el generador de números aleatorios con <function>sra
<!ENTITY note.registerglobals '<note xmlns="http://docbook.org/ns/docbook"><title>register_globals: Observación
importante</title><para>Desde PHP 4.2.0, el valor por defecto de la directiva
<link linkend="ini.register-globals">register_globals</link> es <emphasis>
<literal>register_globals</literal> es <emphasis>
off</emphasis>. La comunidad de PHP desaconseja el uso
de esta directiva y sugiere el uso de otras formas como &link.superglobals;.</para></note>'>
@@ -235,12 +235,37 @@ totalmente desaconsejado.</simpara></warning>'>
<!ENTITY warn.deprecated.feature-7-3-0 '<warning
xmlns="http://docbook.org/ns/docbook"><simpara>Esta característica ha sido declarada
<emphasis>OBSOLETA</emphasis> as of PHP 7.2.0. Su uso está
<emphasis>OBSOLETA</emphasis> a partir de PHP 7.2.0. Su uso está
totalmente desaconsejado.</simpara></warning>'>
<!ENTITY warn.deprecated.function-7-3-0 '<warning
xmlns="http://docbook.org/ns/docbook"><simpara>Esta función ha sido declarada
<emphasis>OBSOLETA</emphasis> as of PHP 7.3.0. Su uso está
<emphasis>OBSOLETA</emphasis> a partir de PHP 7.3.0. Su uso está
totalmente desaconsejado.</simpara></warning>'>
<!ENTITY warn.deprecated.function-7-3-0.removed-8-0-0 '<warning
xmlns="http://docbook.org/ns/docbook"><simpara>Esta función ha sido declarada
<emphasis>OBSOLETA</emphasis> a partir de PHP 7.3.0, y es <emphasis>ELIMINADA</emphasis> desde PHP 8.0.0. Su uso está
totalmente desaconsejado.</simpara></warning>'>
<!ENTITY warn.deprecated.feature-7-4-0 '<warning
xmlns="http://docbook.org/ns/docbook"><simpara>Esta característica ha sido declarada
<emphasis>OBSOLETA</emphasis> a partir de PHP 7.4.0. Su uso está
totalmente desaconsejado.</simpara></warning>'>
<!ENTITY warn.deprecated.function-7-4-0 '<warning
xmlns="http://docbook.org/ns/docbook"><simpara>Esta función ha sido declarada
<emphasis>OBSOLETA</emphasis> a partir de PHP 7.4.0. Su uso está
totalmente desaconsejado</simpara></warning>'>
<!ENTITY warn.deprecated.function-7-4-0.removed-8-0-0 '<warning
xmlns="http://docbook.org/ns/docbook"><simpara>Esta función ha sido declarada
<emphasis>OBSOLETA</emphasis> a partir de PHP 7.4.0, y es <emphasis>ELIMINADA</emphasis> desde PHP 8.0.0. Su uso está
totalmente desaconsejado.</simpara></warning>'>
<!ENTITY warn.deprecated.function-8-0-0 '<warning
xmlns="http://docbook.org/ns/docbook"><simpara>Esta función ha sido declarada
<emphasis>OBSOLETA</emphasis> a partir de PHP 8.0.0. Su uso está
totalmente desaconsejado.</simpara></warning>'>
<!ENTITY removed.php.future 'Esta característica obsoleta <emphasis xmlns="http://docbook.org/ns/docbook">será</emphasis>

View File

@@ -1,25 +1,20 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: af4410a7e15898c3dbe83d6ea38246745ed9c6fb Maintainer: jorgeolaya Status: ready -->
<!-- EN-Revision: a71742330defbc0edfbc6822b4f947bf437b2f70 Maintainer: jorgeolaya Status: ready -->
<reference xml:id="reserved.variables" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Variables predefinidas</title>
<partintro>
<para>
PHP proporciona una gran cantidad de variables predefinidas para todos los scripts.
PHP proporciona una gran cantidad de variables predefinidas para todos los scripts.
Las variables representan de todo, desde <link linkend="language.variables.external">variables externas </link>
hasta variables de entorno incorporadas, desde los últimos mensajes de error hasta los últimos encabezados
hasta variables de entorno incorporadas, desde los últimos mensajes de error hasta los últimos encabezados
recuperados.
</para>
<para>
Véase también la pregunta frecuente titulada
"<link linkend="faq.register-globals">¿Cómo me afecta register_globals?</link>"
</para>
</partintro>
&language.predefined.variables.superglobals;
&language.predefined.variables.globals;
&language.predefined.variables.server;
@@ -31,11 +26,10 @@
&language.predefined.variables.env;
&language.predefined.variables.cookie;
&language.predefined.variables.phperrormsg;
&language.predefined.variables.httprawpostdata;
&language.predefined.variables.httpresponseheader;
&language.predefined.variables.argc;
&language.predefined.variables.argv;
</reference>
<!-- Keep this comment at the end of the file

View File

@@ -1,46 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1c7981f1bac7145878c2c7e4a1f9a302c3841041 Maintainer: yago Status: ready -->
<!-- Reviewed: yes Maintainer: yago -->
<phpdoc:varentry xmlns:phpdoc="http://php.net/ns/phpdoc" xml:id="reserved.variables.httprawpostdata" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>$HTTP_RAW_POST_DATA</refname>
<refpurpose>Datos POST sin tratar</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
&warn.deprecated.feature-5-6-0.removed-7-0-0;
<para>
<varname>$HTTP_RAW_POST_DATA</varname> contiene los datos POST sin tratar.
Véase <link linkend="ini.always-populate-raw-post-data">always_populate_raw_post_data</link>.
</para>
<para>
En general, se debería utilizar
<link linkend="wrappers.php.input"><literal>php://input</literal></link>
en lugar de <varname>$HTTP_RAW_POST_DATA</varname>.
</para>
</refsect1>
</phpdoc:varentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: af6fdf16ab44bcf4d045407963e43c3d9dd2ff29 Maintainer: gerardocdc Status: ready -->
<!-- EN-Revision: cdaea0421544885f02ff3d36bd203dc01b78299e Maintainer: gerardocdc Status: ready -->
<!-- Reviewed: yes -->
<phpdoc:varentry xmlns:phpdoc="http://php.net/ns/phpdoc" xml:id="language.variables.superglobals" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" role="noversion">
@@ -8,12 +8,12 @@
<refname>Superglobals</refname>
<refpurpose>Superglobals son variables internas que están disponibles siempre en todos los ámbitos</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>
Algunas variables predefinidas en PHP son "superglobales", lo que significa que
están disponibles en todos los ámbitos a lo largo del script. No es
están disponibles en todos los ámbitos a lo largo del script. No es
necesario emplear <command>global $variable;</command> para acceder a ellas dentro
de las funciones o métodos.
</para>
@@ -32,30 +32,17 @@
</simplelist>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<title>Disponibilidad de variables</title>
<para>
Por defecto, todas las superglobals están disponibles pero hay directivas que
Por defecto, todas las superglobals están disponibles pero hay directivas que
afectan a su disponibilidad. Para más información, véase la documentacion de
<link linkend="ini.variables-order">variables_order</link>.
</para>
</note>
<note>
<title>Tratando con register_globals</title>
<para>
Si la directiva obsoleta <link linkend="ini.register-globals">register_globals</link>
tiene el valor <literal>on</literal> entonces las variables están tambien
disponibles en el ámbito global del código. Por ejemplo,
<varname>$_POST['foo']</varname> tambien existirá como <varname>$foo</varname>.
</para>
<para>
Para información relacionada, consulte el FAQ titulado
"<link linkend="faq.register-globals">¿Cómo puede afectarme register_globals?</link>"
</para>
</note>
<note>
<title>Variables variables</title>
<para>
@@ -65,7 +52,7 @@
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
@@ -76,7 +63,7 @@
</simplelist>
</para>
</refsect1>
</phpdoc:varentry>
<!-- Keep this comment at the end of the file

View File

@@ -167,9 +167,6 @@ var_dump($objeto_indefinido);
<para>
Depender del valor predeterminado de una variable sin inicializar es problemático
al incluir un archivo en otro que use el mismo nombre de variable.
También es un importante <link
linkend="security.globals">riesgo de seguridad</link> cuando la opción
<link linkend="ini.register-globals">register_globals</link> se encuentra habilitada.
Un error de nivel <link linkend="errorfunc.constants.errorlevels.e-notice">E_NOTICE</link> es
emitido cuendo se trabaja con variables sin inicializar, con la excepción del caso en
el que se anexan elementos a un array no inicializado. La construcción del lenguaje <function>isset</function>
@@ -180,7 +177,7 @@ var_dump($objeto_indefinido);
<sect1 xml:id="language.variables.predefined">
<title>Variables Predefinidas</title>
<simpara>
<para>
PHP proporciona una gran cantidad de variables predefinidas a cualquier
script que se ejecute. Muchas de éstas, sin embargo, no pueden ser
completamente documentadas ya que dependen del servidor que esté
@@ -189,40 +186,11 @@ var_dump($objeto_indefinido);
ejecute PHP desde la <link linkend="features.commandline">línea de
comandos</link>. Para obtener una lista de estas variables, por favor vea
la sección sobre <link linkend="reserved.variables">Variables Predefinidas Reservadas</link>.
</simpara>
</para>
<warning>
<simpara>
A partir de PHP 4.2.0, el valor predeterminado de la directiva PHP <link
linkend="ini.register-globals">register_globals</link> es
<emphasis>off</emphasis> (desactivada). Este es un cambio importante en
PHP. Tener register_globals <emphasis>off</emphasis> afecta el
conjunto de variables predefinidas disponibles en el sistema. Por
ejemplo, para obtener <varname>DOCUMENT_ROOT</varname> se usará
<varname>$_SERVER['DOCUMENT_ROOT']</varname> en vez de
<varname>$DOCUMENT_ROOT</varname> ó <varname>$_GET['id']</varname> de la
URL <literal>http://www.example.com/test.php?id=3</literal> en lugar de
<varname>$id</varname> ó <varname>$_ENV['HOME']</varname> en lugar de
<varname>$HOME</varname>.
</simpara>
<simpara>
Para más información sobre este cambio, puede consultar el apartado de
configuración sobre <link linkend="ini.register-globals">register_globals</link>, el capítulo
sobre seguridad <link linkend="security.globals">Usando "Register Globals" </link>,
asi como los anuncios de lanzamiento de PHP
<link xlink:href="&url.php.release4.1.0;">4.1.0 </link>
y <link xlink:href="&url.php.release4.2.0;">4.2.0</link>
</simpara>
<simpara>
El uso de las variables reservadas predefinidas en PHP, como los <link
linkend="language.variables.superglobals">arrays superglobales</link>
es recomendable.
</simpara>
</warning>
<simpara>
A partir de PHP 4.1.0, PHP ofrece un conjunto adicional de arrays
predefinidas que contienen variables del servidor web, el entorno y
<para>
PHP ofrece un conjunto adicional de arrays predefinidas que
contienen variables del servidor web, el entorno y
entradas del usuario. Estos nuevos arrays son un poco especiales porque
son automáticamente globales. Por esta razón, son conocidas a menudo como
"superglobales". Las superglobales se mencionan más abajo; sin embargo
@@ -233,7 +201,7 @@ var_dump($objeto_indefinido);
(<varname>$HTTP_*_VARS</varname>) todavía existen.
&avail.register-long-arrays;
</simpara>
</para>
<note>
<title>Variables variables</title>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 9a7ca7526c0882bbaa332b5614d88063987220a7 Maintainer: seros Status: ready -->
<!-- EN-Revision: 4a7ddddc27271967b616ad3400cfbe2a9b48212b Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<refentry xml:id="function.extract" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
@@ -19,7 +19,7 @@
Importa variables desde un array a la tabla de símbolos actual.
</para>
<para>
Comprueba cada clave para ver si tiene un nombre de variable válido.
Comprueba cada clave para ver si tiene un nombre de variable válido.
También comprueba las colisiones con las variables existentes en
la tabla de símbolos.
</para>
@@ -40,7 +40,7 @@
<para>
Un array asociativo. Esta función trata a las claves como nombres de variables y
a los valores como valores de variables. Por cada par clave/valor creará una
variable en la tabla de símbolos actual, sujeta a los
variable en la tabla de símbolos actual, sujeta a los
parámetros <parameter>flags</parameter> y <parameter>prefix</parameter>.
</para>
<para>
@@ -221,9 +221,7 @@ azul, grande, esfera, medio
No use <function>extract</function> en datos que no son de confianza, como
las entradas de usuario
(esto es, <varname>$_GET</varname>, <varname>$_FILES</varname>, etc.).
Si lo hace, por ejemplo si quiere ejecutar temporalmente código antiguo que
dependía de <link linkend="security.globals">register_globals</link>
temporalmente, asegúrese de usar uno de los valores de
Si lo hace, asegúrese de usar uno de los valores de
<parameter>flags</parameter> que no sobrescriban, como
<constant>EXTR_SKIP</constant>, y sepa que debería realizar la extracción
en el mismo orden que fue definido en
@@ -231,89 +229,6 @@ azul, grande, esfera, medio
<link linkend="ini">&php.ini;</link>.
</para>
</warning>
<note>
<para>
Si aún
tiene <link linkend="security.globals">register_globals</link>
y está activado, si utiliza <function>extract</function>
en <varname>$_FILES</varname> y
especifica <constant>EXTR_SKIP</constant>, puede obtener resutados
no deseados.
</para>
<warning>
<para>
Esto es una práctica no recomendada y sólo está documentada aquí por razones de
complementación. El uso de
<link linkend="security.globals">register_globals</link> está
obsoleto y las llamadas a <function>extract</function> en información que no es
de confianza tal como <varname>$_FILES</varname> es, como se observó arriba, un
riesgo potencial de seguridad. Si se encuentra con esto, significa
que está usando al menos dos malas prácticas de código.
</para>
</warning>
<programlisting role="php">
<![CDATA[
<?php
/* Se supone que $archivoprueba es el nombre de una entrada de subida de archivo
y que register_globals está activado. */
var_dump($archivoprueba);
extract($_FILES, EXTR_SKIP);
var_dump($archivoprueba);
var_dump($archivoprueba['tmp_name']);
?>
]]>
</programlisting>
<simpara>
Se esperaría ver algo como lo siguiente:
</simpara>
<screen>
<![CDATA[
string(14) "/tmp/phpgCCPX8"
array(5) {
["name"]=>
string(10) "somefile.txt"
["type"]=>
string(24) "application/octet-stream"
["tmp_name"]=>
string(14) "/tmp/phpgCCPX8"
["error"]=>
int(0)
["size"]=>
int(4208)
}
string(14) "/tmp/phpgCCPX8"
]]>
</screen>
<simpara>
Sin embargo, en su lugar se ve algo como esto:
</simpara>
<screen>
<![CDATA[
string(14) "/tmp/phpgCCPX8"
string(14) "/tmp/phpgCCPX8"
string(1) "/"
]]>
</screen>
<para>
Esto es a causa del hecho de que,
ya que <link linkend="security.globals">register_globals</link> está
activado, <varname>$archivoprueba</varname> ya existe en el
ámbito global cuando se llamó a <function>extract</function>. Y
ya que <constant>EXTR_SKIP</constant> está
especificado, <varname>$archivoprueba</varname> no es sobrescrito con
el contenido del array <constant>$_FILES</constant>
por lo que <varname>$archivoprueba</varname> permanece como cadena.
Ya que <link linkend="language.types.string.substr">a las cadenas se puede
acceder usando la sintaxis de array</link> y la cadena no numérica
<literal>tmp_name</literal> es interpretada como
<literal>0</literal>, PHP
ve <varname>$archivoprueba['tmp_name']</varname>
como <varname>$archivoprueba[0]</varname>.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;

View File

@@ -1,82 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 59a1bbcb6f7a1e74a640d7ec2890cc6a12f19b52 Maintainer: mariano Status: ready -->
<!-- Reviewed: no Maintainer: mariano -->
<book xml:id="book.blenc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Blenc - BLowfish ENCoder para código fuente PHP</title>
<titleabbrev>BLENC</titleabbrev>
<preface xml:id="intro.blenc">
&reftitle.intro;
&warn.experimental;
<para>
BLENC es un protector de código fuente PHP que:
<simplelist>
<member>
Cifra tu código fuente utilizando el algoritmo blowfish.
</member>
<member>
Permite el descifrado transparente y la ejecución de scripts PHP previamente
cifrados con BLENC.
</member>
</simplelist>
</para>
<para>
BLENC es una extensión que se acopla al Zend Engine, permitiendo la
encriptación transparente, y la ejecución de scripts PHP mediante el algoritmo
blowfish. No está diseñado para ofrecer una seguridad absoluta (es aún posible
el decifrado del código hacia op codes utilizando un paquete como XDebug), sin
embargo protege a tu código haciendo la ingeniería inversa sumamente difícil.
</para>
<para>
Para poder proteger tu código PHP deberás cifrar cada script mediante la función
<function>blenc_encrypt</function>. Luego puedes incluir el código cifrado según
se muestra a continuación:
<programlisting role="php">
<![CDATA[
<?php
/* Script PHP codificado con BLENC */
$my_source_encoded = 'my_source_encoded.phpe';
include($my_source_encoded);
?>
]]>
</programlisting>
</para>
<para>
BLENC también soporta un tiempo de expiración para el módulo. Así, si deseas
publicar tu código con un tiempo de expiración, puedes compilar la extensión
modificando el archivo de cabecera relacionado a la encriptación y tiempo de
expiración. Por favor consulta la sección de configuración para mayor
información.
</para>
</preface>
&reference.blenc.setup;
&reference.blenc.constants;
&reference.blenc.reference;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,58 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 59a1bbcb6f7a1e74a640d7ec2890cc6a12f19b52 Maintainer: mariano Status: ready -->
<!-- Reviewed: no Maintainer: mariano -->
<section xml:id="blenc.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.install;
<para>
&pecl.moved;
</para>
<para>
&pecl.info;
<link xlink:href="&url.pecl.package;blenc">&url.pecl.package;blenc</link>
</para>
<para>
Es altamente recomendable instalar BLENC desde su código fuente, sin utilizar
el comando 'pecl'. De este modo puedes:
<simplelist>
<member>
Especificar tu propia clave de cifrado utilizada para crear las claves
redistribuíbles. Tu código fuente será aún más difícil de decifrar para
aquellos usuarios que puedan leer tu key_file en el servidor web.
</member>
<member>
Especificar una fecha de expiración para el módulo BLENC. Mediante esta fecha
de expiración puedes lograr que el módulo BLENC funcione hasta cierta fecha
en un determinado sistema. Luego de lo cual BLENC ya no decifrará ningún
archivo.
</member>
</simplelist>
Todas estas opciones de configuración son almazenadas en el archivo de cabecera: blenc_protect.h
</para>
<para>
Por favor consulta el contenido de blenc_protect.h en el código fuente de BLENC para conocer
cómo configurar estas opciones.
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,44 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 03212123a80d47346a46f195fd7565b38e5a15bf Maintainer: seros Status: ready -->
<!-- Reviewed: no -->
<appendix xml:id="blenc.constants" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.constants;
&extension.constants;
<para>
<variablelist>
<varlistentry xml:id="constant.blenc-ext-version">
<term>
<constant>BLENC_EXT_VERSION</constant>
(<type>string</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</para>
</appendix>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,122 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: dd07341fae2c414adc1f700be0890ff32e8daab4 Maintainer: regiemix Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<refentry xml:id="function.blenc-encrypt" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>blenc_encrypt</refname>
<refpurpose>
Encripta un script PHP con BLENC
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>blenc_encrypt</methodname>
<methodparam><type>string</type><parameter>plaintext</parameter></methodparam>
<methodparam><type>string</type><parameter>encodedfile</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>encryption_key</parameter></methodparam>
</methodsynopsis>
<para>
Encripta el contenido del texto sin formato (<parameter>plaintext</parameter>) y lo escribe en un fichero codificado (<parameter>encodedfile</parameter>)
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term>
<parameter>plaintext</parameter>
</term>
<listitem>
<para>
El código fuente a encriptar. No necesita contener etiquetas PHP de abertura/cierre
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>encodedfile</parameter>
</term>
<listitem>
<para>
El nombre del fichero donde BLENC grabará el código codificado.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<parameter>encryption_key</parameter>
</term>
<listitem>
<para>
La clave que utilizará BLENC para encriptar el texto. Si no se especifica
BLENC creará una clave válida.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
BLENC devolverá la clave redistribuible que debe salvarse dentro de key_file:
el camino de acceso a key_file se especifica en el momento de ejecución con la opción blenc.key_file
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo con <function>blenc_encrypt</function> </title>
<programlisting role="php">
<![CDATA[
<?php
/* leer el código fuente PHP */
$source_code = file_get_contents("my_source_to_protect.php");
/* crear la versión encriptada */
$redistributable_key = blenc_encrypt($source_code, "my_source_encoded.php");
/* leer cuál es el fichero key_file */
$key_file = ini_get('blenc.key_file');
/* grabar la clave redistribuible */
file_put_contents($key_file, $redistributable_key, FILE_APPEND);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,77 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 0d4f244c391ffdd74b7630180204e9b9df59c20a Maintainer: seros Status: ready -->
<!-- Reviewed: no -->
<section xml:id="blenc.configuration" xmlns="http://docbook.org/ns/docbook">
&reftitle.runtime;
&extension.runtime;
<para>
<table>
<title>&ConfigureOptions; de Blenc</title>
<tgroup cols="4">
<thead>
<row>
<entry>&Name;</entry>
<entry>&Default;</entry>
<entry>&Changeable;</entry>
<entry>&Changelog;</entry>
</row>
</thead>
<tbody>
<row>
<entry>
<link linkend="ini.blenc.key-file">blenc.key_file</link>
</entry>
<entry>/usr/local/etc/blenckeys</entry>
<entry>PHP_INI_ALL</entry>
<entry><!-- leave empty, this will be filled by an automatic script --></entry>
</row>
</tbody>
</tgroup>
</table>
</para>
&ini.descriptions.title;
<para>
<variablelist>
<varlistentry xml:id="ini.blenc.key-file">
<term>
<parameter>blenc.key_file</parameter>
<type>string</type>
</term>
<listitem>
<para>
Es la ubicación donde BLENC puede encontrar el fichero
que contiene una lista de claves de desencriptación desponible. Este
fichero debe ser legible por el servidor Web.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,32 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 03212123a80d47346a46f195fd7565b38e5a15bf Maintainer: seros Status: ready -->
<!-- Reviewed: no -->
<reference xml:id="ref.blenc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>&Functions; de Blenc</title>
&reference.blenc.entities.functions;
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,47 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 03212123a80d47346a46f195fd7565b38e5a15bf Maintainer: seros Status: ready -->
<!-- Reviewed: no -->
<chapter xml:id="blenc.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<section xml:id="blenc.requirements">
&reftitle.required;
<para>
</para>
</section>
&reference.blenc.configure;
&reference.blenc.ini;
<section xml:id="blenc.resources">
&reftitle.resources;
<para>
</para>
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,76 @@
<?xml version="1.0" encoding="utf-8"?>
<!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V5.0//EN"
"{PATH_TO_DOCBASE}/docbook/docbook-xml/docbook.dtd" [
<!-- $Revision$ -->
<!-- We use xhtml entities all over the place -->
<!ENTITY % xhtml-lat1 SYSTEM "{PATH_TO_DOCBASE}/entities/ISO/xhtml1-lat1.ent">
<!ENTITY % xhtml-symbol SYSTEM "{PATH_TO_DOCBASE}/entities/ISO/xhtml1-symbol.ent">
<!ENTITY % xhtml-special SYSTEM "{PATH_TO_DOCBASE}/entities/ISO/xhtml1-special.ent">
<!ENTITY % isopub SYSTEM "{PATH_TO_DOCBASE}/entities/ISO/isopub.ent">
%xhtml-lat1;
%xhtml-symbol;
%xhtml-special;
%isopub;
<!-- Fallback to English definitions and snippets (in case of missing translation) -->
<!ENTITY % language-defs.default SYSTEM "{PATH_TO_DOC}/language-defs.ent">
<!ENTITY % language-snippets.default SYSTEM "{PATH_TO_DOC}/language-snippets.ent">
<!ENTITY % extensions.default SYSTEM "{PATH_TO_DOC}/extensions.ent">
%language-defs.default;
%extensions.default;
%language-snippets.default;
<!-- All global entities for the XML files -->
<!ENTITY % global.entities SYSTEM "{PATH_TO_DOCBASE}/entities/global.ent">
<!-- These are language independent -->
<!ENTITY % frontpage.entities SYSTEM "{PATH_TO_DOC}/contributors.ent">
<!ENTITY % file.entities SYSTEM "{PATH_TO_DOCBASE}/entities/file-entities.ent">
<!-- Include all external DTD parts defined previously -->
%global.entities;
%file.entities;
%frontpage.entities;
]>
<book xml:id="book.componere" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xml:lang="en">
<title>Componere</title>
<titleabbrev>Componere</titleabbrev>
<preface xml:id="intro.componere">
&reftitle.intro;
<para>
</para>
</preface>
&reference.componere.setup;
&reference.componere.constants;
&reference.componere.examples;
&reference.componere.reference;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,82 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!--
Do NOT translate this file
-->
<versions>
<!-- Classes and Methods -->
<function name='componere\abstract\definition' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\abstract\definition::addmethod' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\abstract\definition::addtrait' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\abstract\definition::addinterface' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\abstract\definition::getreflector' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::__construct' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::addproperty' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::addconstant' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::getclosure' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::getclosures' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::register' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::isregistered' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::addmethod' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::addtrait' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::addinterface' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\definition::getreflector' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::__construct' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::getclosure' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::getclosures' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::apply' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::revert' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::isapplied' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::derive' from='Componere 2 &gt;= 2.1.1'/>
<function name='componere\patch::addmethod' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::addtrait' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::addinterface' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\patch::getreflector' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\method' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\method::__construct' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\method::setprotected' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\method::setprivate' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\method::setstatic' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\method::getreflector' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::__construct' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::setprotected' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::setprivate' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::setstatic' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::isprotected' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::isprivate' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::isstatic' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\value::hasdefault' from='Componere 2 &gt;= 2.1.0'/>
<function name='componere\cast' from='Componere 2 &gt;= 2.1.2'/>
<function name='componere\cast_by_ref' from='Componere 2 &gt;= 2.1.2'/>
</versions>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,54 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1634a886415d0ab4df195fe49d18a1c150b70758 Maintainer: chuso Status: ready -->
<!-- Reviewed: no -->
<book xml:id="book.dbx" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>dbx</title>
<!-- {{{ preface -->
<preface xml:id="intro.dbx">
&reftitle.intro;
<para>
El módulo dbx es una capa de abstracción de base de datos (db 'X', donde 'X'
es una base de datos soportada). Las funciones de dbx permiten acceder
a todas las bases de datos soportadas usando una simple convención de llamada.
La funciones de dbx por sí mismas no son la interfaz directa de las
bases de datos, sino que son la interfaz de los módulos que se usan para soportar
estas bases de datos.
</para>
<note>
<para>
&pecl.moved-ver;5.1.0.
</para>
</note>
</preface>
<!-- }}} -->
&reference.dbx.setup;
&reference.dbx.constants;
&reference.dbx.reference;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,36 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<section xml:id="dbx.installation" xmlns="http://docbook.org/ns/docbook">
&reftitle.install;
<para>
Para tener disponibilidad de estas funciones se debe compilar PHP con
soporte para dbx usando la opción <option role="configure">--enable-dbx</option>
y todas las opciones para las bases de datos que serán utilizadas, p.ej., para
MySQL se debe especificar también
<option role="configure">--with-mysql=[DIR]</option>.
Para que otras bases de datos soportadas funcionen con el módulo, consulte sus
documentaciones específicas.
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,262 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: b824e2b1086e94a1077bd071964547283616030a Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<appendix xml:id="constants.dbx" xmlns="http://docbook.org/ns/docbook">
&reftitle.constants;
&extension.constants;
<variablelist>
<varlistentry xml:id="constant.dbx-mysql">
<term>
<constant>DBX_MYSQL</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-odbc">
<term>
<constant>DBX_ODBC</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-pgsql">
<term>
<constant>DBX_PGSQL</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-mssql">
<term>
<constant>DBX_MSSQL</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-fbsql">
<term>
<constant>DBX_FBSQL</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-oci8">
<term>
<constant>DBX_OCI8</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-sybasect">
<term>
<constant>DBX_SYBASECT</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-sqlite">
<term>
<constant>DBX_SQLITE</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-persistent">
<term>
<constant>DBX_PERSISTENT</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-result-info">
<term>
<constant>DBX_RESULT_INFO</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-result-index">
<term>
<constant>DBX_RESULT_INDEX</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-result-assoc">
<term>
<constant>DBX_RESULT_ASSOC</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-result-unbuffered">
<term>
<constant>DBX_RESULT_UNBUFFERED</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-colnames-unchanged">
<term>
<constant>DBX_COLNAMES_UNCHANGED</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-colnames-uppercase">
<term>
<constant>DBX_COLNAMES_UPPERCASE</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-colnames-lowercase">
<term>
<constant>DBX_COLNAMES_LOWERCASE</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-cmp-native">
<term>
<constant>DBX_CMP_NATIVE</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-cmp-text">
<term>
<constant>DBX_CMP_TEXT</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-cmp-number">
<term>
<constant>DBX_CMP_NUMBER</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-cmp-asc">
<term>
<constant>DBX_CMP_ASC</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
<varlistentry xml:id="constant.dbx-cmp-desc">
<term>
<constant>DBX_CMP_DESC</constant>
(<type>integer</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</appendix>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,93 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<refentry xml:id="function.dbx-close" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_close</refname>
<refpurpose>Cierra una conexión/base de datos abierta</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>dbx_close</methodname>
<methodparam><type>object</type><parameter>link_identifier</parameter></methodparam>
</methodsynopsis>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>link_identifier</parameter></term>
<listitem>
<para>
El objeto de enlace de DBX a cerrar.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve 1 si se tuvo éxito o 0 si ocurrió un error.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>dbx_close</function></title>
<programlisting role="php">
<![CDATA[
<?php
$enlace = dbx_connect(DBX_MYSQL, "localhost", "db", "username", "password")
or die("No se pudo conectar");
echo "Conectado satisfactoriamente";
dbx_close($enlace);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Consulte siempre la documentación específica del módulo también.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>dbx_connect</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,168 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<refentry xml:id="function.dbx-compare" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_compare</refname>
<refpurpose>Comparar dos filas con propósitos de ordenación</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>dbx_compare</methodname>
<methodparam><type>array</type><parameter>row_a</parameter></methodparam>
<methodparam><type>array</type><parameter>row_b</parameter></methodparam>
<methodparam><type>string</type><parameter>column_key</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter><initializer>DBX_CMP_ASC | DBX_CMP_NATIVE</initializer></methodparam>
</methodsynopsis>
<para>
<function>dbx_compare</function> es una función de ayuda para
<function>dbx_sort</function> para facilitar la construcción y el uso de funciones
de ordenación personalizadas.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>row_a</parameter></term>
<listitem>
<para>
Primera fila
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>row_b</parameter></term>
<listitem>
<para>
Sgunda fila
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>column_key</parameter></term>
<listitem>
<para>
La columna comparada
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
<parameter>flags</parameter> puede ser establecido para especificar la dirección
de comparación:
<itemizedlist>
<listitem>
<simpara>
<constant>DBX_CMP_ASC</constant> - orden ascendente
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_CMP_DESC</constant> - orden descendente
</simpara>
</listitem>
</itemizedlist>
y el tipo de comparación preferido:
<itemizedlist>
<listitem>
<simpara>
<constant>DBX_CMP_NATIVE</constant> - sin conversión de tipo
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_CMP_TEXT</constant> - comparar elementos como cadenas
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_CMP_NUMBER</constant> - comparar elementos numéricamente
</simpara>
</listitem>
</itemizedlist>
Se pueden combinar una de las constantes de dirección y tipo con
el operador a nivel de bit OR (|).
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve <literal>0</literal> si <literal>row_a[$column_key]</literal>
es igual a <literal>row_b[$column_key]</literal>, y <literal>1</literal>
o <literal>-1</literal> si el primero es mayor o menor que el
segundo respectivamente, o vice versa si <parameter>flag</parameter>
está establacido a <constant>DBX_CMP_DESC</constant>.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>dbx_compare</function></title>
<programlisting role="php">
<![CDATA[
<?php
function user_re_order($a, $b)
{
$rv = dbx_compare($a, $b, "parentid", DBX_CMP_DESC);
if (!$rv) {
$rv = dbx_compare($a, $b, "id", DBX_CMP_NUMBER);
}
return $rv;
}
$enlace = dbx_connect(DBX_ODBC, "", "db", "username", "password")
or die("No se pudo conectar");
$resultado = dbx_query($enlace, "SELECT id, parentid, description FROM table ORDER BY id");
// la información en $resultado ahora está ordenada por id
dbx_sort($result, "user_re_order");
// la información en $resultado ahora está ordenada por parentid (descendentemente), luego por id
dbx_close($enlace);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>dbx_sort</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,247 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: e41806c30bf6975e452c0d4ce35ab0984c2fa68c Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<refentry xml:id="function.dbx-connect" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_connect</refname>
<refpurpose>Abrir una conexión/base de datos</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>object</type><methodname>dbx_connect</methodname>
<methodparam><type>mixed</type><parameter>module</parameter></methodparam>
<methodparam><type>string</type><parameter>host</parameter></methodparam>
<methodparam><type>string</type><parameter>database</parameter></methodparam>
<methodparam><type>string</type><parameter>username</parameter></methodparam>
<methodparam><type>string</type><parameter>password</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>persistent</parameter></methodparam>
</methodsynopsis>
<para>
Abre una conexión a una base de datos.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>module</parameter></term>
<listitem>
<para>
El parámetro <parameter>module</parameter> puede ser una cadena o una
constante, aunque se prefiere la segunda forma. Los valores posibles se
dan a continuación, pero tenga en mente que sólo funcionan si en realidad
el módulo está cargado.
</para>
<para>
<itemizedlist>
<listitem>
<simpara>
<constant>DBX_MYSQL</constant> o <literal>"mysql"</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_ODBC</constant> o <literal>"odbc"</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_PGSQL</constant> o <literal>"pgsql"</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_MSSQL</constant> o <literal>"mssql"</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_FBSQL</constant> o <literal>"fbsql"</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_SYBASECT</constant> o <literal>"sybase_ct"</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_OCI8</constant> o <literal>"oci8"</literal>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_SQLITE</constant> o <literal>"sqlite"</literal>
</simpara>
</listitem>
</itemizedlist>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>host</parameter></term>
<listitem>
<para>
El host servidor de SQL
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>database</parameter></term>
<listitem>
<para>
El nombre de la base de datos
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>username</parameter></term>
<listitem>
<para>
El nombre de usuario
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>password</parameter></term>
<listitem>
<para>
La contraseña
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>persistent</parameter></term>
<listitem>
<para>
El parámetro <parameter>persistent</parameter> puede ser establecido a
<constant>DBX_PERSISTENT</constant>, si es así, se creará una
conexión persistente.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
<para>
Los parámetros <parameter>host</parameter>, <parameter>database</parameter>,
<parameter>username</parameter> y <parameter>password</parameter>
son comunes, pero no siempre se usan en las funciones de
conexión para el módulo abstracto.
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve un objeto si se tuvo éxito, &false; si ocurrió un error. Si se ha hecho una
conexión pero no se ha podido seleccionar la base de datos, la conexión se cerrará y
se devolverá &false;.
</para>
<para>
El objeto dado por <varname>object</varname> devuelto tiene tres propiedades:
<variablelist>
<varlistentry>
<term>
<property>database</property>
</term>
<listitem>
<simpara>
Es el nombre de la base de datos seleccionada actualmente.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<property>handle</property>
</term>
<listitem>
<para>
Es un gestor válido para la base de datos conectada, y como tal se puede
usar en funciones específicas del módulo (si se necesita).
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
$enlace = dbx_connect(DBX_MYSQL, "localhost", "db", "username", "password");
mysql_close($enlace->handle); // dbx_close($enlace) sería mejor aquí
?>
]]>
</programlisting>
</informalexample>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<property>module</property>
</term>
<listitem>
<simpara>
Sólo se usa internamente por dbx y es en realidad el número de módulo
mencionado arriba.
</simpara>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>dbx_connect</function></title>
<programlisting role="php">
<![CDATA[
<?php
$enlace = dbx_connect(DBX_ODBC, "", "db", "username", "password", DBX_PERSISTENT)
or die("No se pudo conectar");
echo "Conectado satisfactoriamente";
dbx_close($enlace);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Consulte siempre la documentación específica del módulo también.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>dbx_close</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,104 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<refentry xml:id="function.dbx-error" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_error</refname>
<refpurpose>
Reporta un mensaje de error de la última llamada a la función en el módulo
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>dbx_error</methodname>
<methodparam><type>object</type><parameter>link_identifier</parameter></methodparam>
</methodsynopsis>
<para>
<function>dbx_error</function> devuelve el último mensaje de error.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>link_identifier</parameter></term>
<listitem>
<para>
El objeto de enlace de DBX devuelto por <function>dbx_connect</function>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve una cadena que contiene el mensaje de error de la última llamada a la función
del módulo abstracto (p.ej. el módulo mysql). Si existen múltiples
conexiones en el mismo módulo sólo se da el último error. Si existen
conexiones en diferentes módulos, se devuelve el último error del
módulo especificado por el parámetro <parameter>link_identifier</parameter>.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>dbx_error</function></title>
<programlisting role="php">
<![CDATA[
<?php
$enlace = dbx_connect(DBX_MYSQL, "localhost", "db", "username", "password")
or die("No se pudo conectar");
$resultado = dbx_query($enlace, "select id from non_existing_table");
if ($resultado == 0) {
echo dbx_error($enlace);
}
dbx_close($enlace);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Consulte siempre la documentación específica del módulo también.
</para>
<para>
El mensaje de error para <productname>Microsoft SQL Server</productname> es en realidad el resultado
de la función <function>mssql_get_last_message</function>.
</para>
<para>
El mensaje de error para Oracle (oci8) no está aún implementado.
</para>
</note>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,104 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<refentry xml:id="function.dbx-escape-string" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_escape_string</refname>
<refpurpose>
Escapar una cadena para que pueda ser usada de forma segura en una declaración sql
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>string</type><methodname>dbx_escape_string</methodname>
<methodparam><type>object</type><parameter>link_identifier</parameter></methodparam>
<methodparam><type>string</type><parameter>text</parameter></methodparam>
</methodsynopsis>
<para>
Escapa la cadena dada para que pueda ser usada de forma segura en una declaración sql
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>link_identifier</parameter></term>
<listitem>
<para>
El objeto de enlace de DBX devuelto por <function>dbx_connect</function>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>text</parameter></term>
<listitem>
<para>
La cadena a escapar.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Devuelve el texto escapado cuando sea necesario (tal como comillas, barras invertidas,
etc). Se devuelve &null; en caso de error.
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>dbx_escape_string</function></title>
<programlisting role="php">
<![CDATA[
<?php
$enlace = dbx_connect(DBX_MYSQL, "localhost", "db", "username", "password")
or die("No se pudo conectar");
$texto = dbx_escape_string($enlace, "It\'s quoted and backslashed (\\).");
$result = dbx_query($enlace, "insert into tbl (txt) values ('" . $texto . "')");
if ($result == 0) {
echo dbx_error($enlace);
}
dbx_close($enlace);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>dbx_query</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,114 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<refentry xml:id="function.dbx-fetch-row" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_fetch_row</refname>
<refpurpose>Traer filas de un resultado de una consulta que tuvo la
bandera <constant>DBX_RESULT_UNBUFFERED</constant> establecida</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>dbx_fetch_row</methodname>
<methodparam><type>object</type><parameter>result_identifier</parameter></methodparam>
</methodsynopsis>
<para>
<function>dbx_fetch_row</function> trae filas de un identificador de resultado
que tuvo la bandera <constant>DBX_RESULT_UNBUFFERED</constant> establecida.
</para>
<para>
Cuando no está establecida <constant>DBX_RESULT_UNBUFFERED</constant> en la
consulta, <function>dbx_fetch_row</function> fallará ya que en realidad todas las filas han
sido traidas en la propiedad <property>data</property> resultado.
</para>
<para>
Como efecto secundario, la propiedad <property>rows</property> del objeto resultado de
consulta se incrementa por cada llamada satisfactoria a
<function>dbx_fetch_row</function>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>result_identifier</parameter></term>
<listitem>
<para>
Un conjunto de resultados devueltos por <function>dbx_query</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Si se tuvo éxito, devuelve un objeto que contiene la misma información que tendría
cualquier fila en la propiedad <property>data</property>
resultado de <function>dbx_query</function>, incluyendo columnas accesibles por índice
o por nombres de campo cuando las banderaa para <function>dbx_query</function> están
establecidas de esa forma.
</para>
<para>
Si falla, devuelve <literal>0</literal> (es decir, cuando no están disponibles
más filas).
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Cómo tratar el valor devuelto</title>
<programlisting role="php">
<![CDATA[
<?php
$resultado = dbx_query($enlace, 'SELECT id, parentid, description FROM table', DBX_RESULT_UNBUFFERED);
echo "<table>\n";
while ($fila = dbx_fetch_row($resultado)) {
echo "<tr>\n";
foreach ($fila as $campo) {
echo "<td>$campo</td>";
}
echo "</tr>\n";
}
echo "</table>\n";
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>dbx_query</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,399 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: b824e2b1086e94a1077bd071964547283616030a Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<refentry xml:id="function.dbx-query" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_query</refname>
<refpurpose>Enviar una consulta y traer todos los resultado (si hubo alguno)</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>dbx_query</methodname>
<methodparam><type>object</type><parameter>link_identifier</parameter></methodparam>
<methodparam><type>string</type><parameter>sql_statement</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flags</parameter></methodparam>
</methodsynopsis>
<para>
Envía una consulta u trae todos los resultados.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>link_identifier</parameter></term>
<listitem>
<para>
El objeto de enlace de DBX devuelto por <function>dbx_connect</function>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>sql_statement</parameter></term>
<listitem>
<para>
Declaración SQL.
</para>
<para>
La información dentro de la consulta deberíla ser <link
linkend="function.dbx-escape-string">adecuadamente escapada</link>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flags</parameter></term>
<listitem>
<para>
El parámetro <parameter>flags</parameter> se usa para controlar la cantidad de
niformación que es devuelta. Puede ser cualquier combinación de las siguientes
constantes con el operador a nivel de bit OR (|). Las banderas (flags) DBX_COLNAMES_*
sobrescriben la configuración dbx.colnames_case del &php.ini;.
<variablelist>
<varlistentry>
<term>
<constant>DBX_RESULT_INDEX</constant>
</term>
<listitem>
<simpara>
Es <emphasis>siempre</emphasis> establecida, es decir, el objeto devuelto
tiene la propiedad <property>data</property> que es una matriz de 2
dimensiones indexada numéricamente. Por ejemplo, en la expresión
<literal>data[2][3]</literal> <literal>2</literal> significa el número de fila
(o registro) y <literal>3</literal> significa el número de columna
(o campo). La primera fila y columna están indexadas como 0.
</simpara>
<simpara>
Si también se especifica <constant>DBX_RESULT_ASSOC</constant>, el
objeto devuelto contiene también la información relacionada con
<constant>DBX_RESULT_INFO</constant>, incluso si no se especificó.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_RESULT_INFO</constant>
</term>
<listitem>
<simpara>
Proporciona información acerca de las columnas, como los nombres y tipos de campos.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_RESULT_ASSOC</constant>
</term>
<listitem>
<simpara>
Consigue que los valores de campos se puedan acceder con los respectivos
nombres de columnas usados como claves a la propiedad <property>data</property>
del objeto devuelto.
</simpara>
<simpara>
Los resultados relacionados son en realidad referencias a la información indexada
numéricamente, por lo que modificar <literal>data[0][0]</literal> causa que
<literal>data[0]['nombre_del_campo_de_la_primera_columna']</literal> se mofique
también.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_RESULT_UNBUFFERED</constant>
</term>
<listitem>
<simpara>
Esta bandera no creará la propiedad <property>data</property>, y
la propiedad <property>rows</property> será inicialmente 0. Use esta
bandera para conjuntos de datos grandes, y use <function>dbx_fetch_row</function> para
recuperar los resultados fila por fila.
</simpara>
<simpara>
La función <function>dbx_fetch_row</function> devolverá las filas que
están en conformidad con las banderas establecidas con esta consulta. A propósito, también
actualizará <property>rows</property> cada vez que sea llamada.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_COLNAMES_UNCHANGED</constant>
</term>
<listitem>
<simpara>
El caso de los nombres de columnas devueltos no serán cambiados.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_COLNAMES_UPPERCASE</constant>
</term>
<listitem>
<simpara>
El caso de los nombres de columnas devueltos serán cambiados a
mayúsculas.
</simpara>
</listitem>
</varlistentry>
<varlistentry>
<term>
<constant>DBX_COLNAMES_LOWERCASE</constant>
</term>
<listitem>
<simpara>
El caso de los nombres de columnas devueltos serán cambiados a
minúsculas.
</simpara>
</listitem>
</varlistentry>
</variablelist>
Observer que <constant>DBX_RESULT_INDEX</constant> se usa siempre, a pesar del
valor actual del parámetro <parameter>flags</parameter>. Esto significa
que sólo son efectivas las siguientes combinaciones:
<itemizedlist>
<listitem>
<simpara>
<constant>DBX_RESULT_INDEX</constant>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_RESULT_INDEX</constant> |
<constant>DBX_RESULT_INFO</constant>
</simpara>
</listitem>
<listitem>
<simpara>
<constant>DBX_RESULT_INDEX</constant> |
<constant>DBX_RESULT_INFO</constant> |
<constant>DBX_RESULT_ASSOC</constant> - esto es lo predeterminado si
no se especificó <parameter>flags</parameter>.
</simpara>
</listitem>
</itemizedlist>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
<function>dbx_query</function> devuelve un objeto o <literal>1</literal>
si se tuvo éxtio, y <literal>0</literal> si falló. El objeto resultado es
devuelto sólo si la consulta dada en <parameter>sql_statement</parameter>
produce un conjunto de resultados (es decir, una consulta SELECT, incluso si el conjunto de resultados
está vacío).
</para>
<para>
El objeto resultado tiene cuatro o cinco
propiedades dependiendo de <parameter>flags</parameter>:
<variablelist>
<varlistentry>
<term>
<property>handle</property>
</term>
<listitem>
<para>
Es un gestor válido para la base de datos conectada, y como tal se puede
usar en las funciones específicas del módulo (si se requiere).
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
$resultado = dbx_query($enlace, "SELECT id FROM table");
mysql_field_len($resultado->handle, 0);
?>
]]>
</programlisting>
</informalexample>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<property>cols</property> y <property>rows</property>
</term>
<listitem>
<para>
Estas contienen el número de columnas (o campos) y de filas (o registros)
respectivamente.
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
$resultado = dbx_query($enlace, 'SELECT id FROM table');
echo $resultado->rows; // número de registros
echo $resultado->cols; // número de campos
?>
]]>
</programlisting>
</informalexample>
</para>
</listitem>
</varlistentry>
<varlistentry>
<term>
<property>info</property> (opcional)
</term>
<listitem>
<simpara>
Es devuelto sólo si se espscifica <constant>DBX_RESULT_INFO</constant> o
<constant>DBX_RESULT_ASSOC</constant> en el parámetro
<parameter>flags</parameter>. Es una matriz de 2 dimensiones
que tiene dos filas nominadas (<literal>name</literal> y
<literal>type</literal>) para recuperar la información de la columna.
</simpara>
<example>
<title>listar cada nombre de campo y tipo</title>
<programlisting role="php">
<![CDATA[
<?php
$resultado = dbx_query($enlace, 'SELECT id FROM table',
DBX_RESULT_INDEX | DBX_RESULT_INFO);
for ($i = 0; $i < $resultado->cols; $i++ ) {
echo $resultado->info['name'][$i] . "\n";
echo $resultado->info['type'][$i] . "\n";
}
?>
]]>
</programlisting>
</example>
</listitem>
</varlistentry>
<varlistentry>
<term>
<property>data</property>
</term>
<listitem>
<simpara>
Esta propiedad contiene la información resultante actual, posiblemente asociada
tambien con los nombres de columna, dependiendo de <parameter>flags</parameter>.
Si está establecido <constant>DBX_RESULT_ASSOC</constant>, es posible usar
<literal>$resultado->data[2]["nombre_campo"]</literal>.
</simpara>
<example>
<title>imprimir el contenido de la propiedad data en una tabla HTML</title>
<programlisting role="php">
<![CDATA[
<?php
$resultado = dbx_query($link, 'SELECT id, parentid, description FROM table');
echo "<table>\n";
foreach ($resultado->data as $fila) {
echo "<tr>\n";
foreach ($fila as $campo) {
echo "<td>$campo</td>";
}
echo "</tr>\n";
}
echo "</table>\n";
?>
]]>
</programlisting>
</example>
<example>
<title>Cómo tratar las consultas UNBUFFERED</title>
<programlisting role="php">
<![CDATA[
<?php
$resultado = dbx_query ($enlace, 'SELECT id, parentid, description FROM table', DBX_RESULT_UNBUFFERED);
echo "<table>\n";
while ($fila = dbx_fetch_row($resultado)) {
echo "<tr>\n";
foreach ($fila as $campo) {
echo "<td>$campo</td>";
}
echo "</tr>\n";
}
echo "</table>\n";
?>
]]>
</programlisting>
</example>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Cómo tratar el valor devuelto</title>
<programlisting role="php">
<![CDATA[
<?php
$enlace = dbx_connect(DBX_ODBC, "", "db", "username", "password")
or die("No se pudo conectar");
$resultado = dbx_query($enlace, 'SELECT id, parentid, description FROM table');
if (is_object($resultado) ) {
// ... hacer algo aquí, ver ejemplos detallados más adelante ...
// primero, imprimir los nombres de campos y tipos
// después, dibujar una tabla rellenada con los valores de los campos devueltos
} else {
exit("La consulta falló");
}
dbx_close($enlace);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Consulte siempre la documentación específica del módulo también.
</para>
<para>
Los nombres de columnas en una base de datos Oracle son devueltos en minúsculas.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>dbx_escape_string</function></member>
<member><function>dbx_fetch_row</function></member>
<member><function>dbx_connect</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,127 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<refentry xml:id="function.dbx-sort" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>dbx_sort</refname>
<refpurpose>
Ordenar un resultado de una llamada a dbx_query mediante una función de ordenación personalizada
</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>dbx_sort</methodname>
<methodparam><type>object</type><parameter>result</parameter></methodparam>
<methodparam><type>string</type><parameter>user_compare_function</parameter></methodparam>
</methodsynopsis>
<para>
Ordena un resultado de una llamada a <function>dbx_query</function> con una función de ordenación
personalizada.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>result</parameter></term>
<listitem>
<para>
Un conjunto de resultados devueltos por <function>dbx_query</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>user_compare_function</parameter></term>
<listitem>
<para>
La función de comparación definida por el usuario. Debe aceptar dos argumentosy
devolver un entero menor que, igual que, mayor que cero si el
primer argumento se considera respectivamente menor que, igual que
o mayor que el segundo.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>dbx_sort</function></title>
<programlisting role="php">
<![CDATA[
<?php
function user_re_order($a, $b)
{
$rv = dbx_compare($a, $b, "parentid", DBX_CMP_DESC);
if (!$rv) {
$rv = dbx_compare($a, $b, "id", DBX_CMP_NUMBER);
}
return $rv;
}
$enlace = dbx_connect(DBX_ODBC, "", "db", "username", "password")
or die("No se pudo conectar");
$resultado = dbx_query($enlace, "SELECT id, parentid, description FROM tbl ORDER BY id");
// la información de $resultado está ordenada ahora por id
dbx_sort($resultado, "user_re_order");
// la información de $resultado está ordenada por parentid (descendentemente), luego por id
dbx_close($enlace);
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<note>
<para>
Siempre es mejor usar la cláusula <literal>ORDER BY</literal>
<literal>SQL</literal> en vez de <function>dbx_sort</function>
mientras sea posible.
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>dbx_compare</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,75 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: f052ac1bd73549125c3fc3dc68a36d4b0608a16d Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<section xml:id="dbx.configuration" xmlns="http://docbook.org/ns/docbook">
&reftitle.runtime;
&extension.runtime;
<para>
<table>
<title>Opciones de Configuración de DBX</title>
<tgroup cols="4">
<thead>
<row>
<entry>&Name;</entry>
<entry>&Default;</entry>
<entry>&Changeable;</entry>
<entry>&Changelog;</entry>
</row>
</thead>
<tbody>
<row>
<entry><link linkend="ini.dbx.colnames-case">dbx.colnames_case</link></entry>
<entry>"unchanged"</entry>
<entry>PHP_INI_SYSTEM</entry>
<entry>Eliminado en PHP 5.1.0.</entry>
</row>
</tbody>
</tgroup>
</table>
&ini.php.constants;
</para>
&ini.descriptions.title;
<para>
<variablelist>
<varlistentry xml:id="ini.dbx.colnames-case">
<term>
<parameter>dbx.colnames_case</parameter>
<type>string</type>
</term>
<listitem>
<para>
Los nombres de las columnas pueden ser devueltas "unchanged" (sin cambios) o convertidas a
"uppercase" o "lowercase" (mayúsculas y minúsculas respectivamente). Esta directiva puede ser sobrescrita
con una bandera establecia en <function>dbx_query</function>.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,103 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 6fe0f9389b85c7b574f818acb7aa5192d31ac949 Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<chapter xml:id="dbx.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<!-- {{{ Requirements -->
<section xml:id="dbx.requirements">
&reftitle.required;
<para>
Para ser capaz de utilizar una base de datos con el módulo dbx, el módulo debe ser
enlazado o cargado dentro de PHP, y el módulo de la base de datos debe ser soportado por el
módulo dbx. Actualmente están soportadas las siguientes bases de datos, aunque otras
le seguirán:
<itemizedlist>
<listitem>
<simpara>
<link linkend="ref.fbsql">FrontBase</link> (disponible desde PHP 4.1.0).
</simpara>
</listitem>
<listitem>
<simpara>
<link linkend="ref.fbsql">FrontBase</link>
</simpara>
</listitem>
<listitem>
<simpara>
<link linkend="ref.mysql">MySQL</link>
</simpara>
</listitem>
<listitem>
<simpara>
<link linkend="ref.uodbc">ODBC</link>
</simpara>
</listitem>
<listitem>
<simpara>
<link linkend="ref.pgsql">PostgreSQL</link>
</simpara>
</listitem>
<listitem>
<simpara>
<link linkend="ref.oci8">Oracle (oci8)</link>
</simpara>
</listitem>
<listitem>
<simpara>
SQLite
</simpara>
</listitem>
</itemizedlist>
</para>
<para>
La documentación para añadir soporte de una base de datos adicional a dbx se puede
encontrar en <link xlink:href="&url.dbx.docs;">&url.dbx.docs;</link>.
</para>
</section>
<!-- }}} -->
<!-- {{{ Installation -->
&reference.dbx.configure;
<!-- }}} -->
<!-- {{{ Configuration -->
&reference.dbx.ini;
<!-- }}} -->
<!-- {{{ Resources -->
<section xml:id="dbx.resources">
&reftitle.resources;
<para>
Existen dos tipos de recursos que se usan en el módulo dbx. El primero es el
<type>object</type>-enlace para una conexión a una base de datos, el segundo es un
<type>object</type>-resultado que guarda el resultado de una consulta.
</para>
</section>
<!-- }}} -->
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,39 +0,0 @@
<?xml version='1.0' encoding='utf-8'?>
<!-- $Revision$ -->
<!--
Do NOT translate this file
-->
<versions>
<function name='dbx_close' from='PHP 4 &gt;= 4.0.6, PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
<function name='dbx_cmp_asc' from='PHP 4 &gt;= 4.0.6'/>
<function name='dbx_cmp_desc' from='PHP 4 &gt;= 4.0.6'/>
<function name='dbx_compare' from='PHP 4 &gt;= 4.1.0, PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
<function name='dbx_connect' from='PHP 4 &gt;= 4.0.6, PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
<function name='dbx_error' from='PHP 4 &gt;= 4.0.6, PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
<function name='dbx_esc' from='PHP 4 &gt;= 4.3.0'/>
<function name='dbx_escape_string' from='PHP 4 &gt;= 4.3.0, PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
<function name='dbx_fetch_row' from='PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
<function name='dbx_query' from='PHP 4 &gt;= 4.0.6, PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
<function name='dbx_sort' from='PHP 4 &gt;= 4.0.6, PHP 5 &lt;= 5.0.5, PECL dbx &gt;= 1.1.0'/>
</versions>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,186 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 0e9f78e1a585c94eb32d1b88e64e13b74f262c9a Maintainer: seros Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="intldateformatter.settimezoneid" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>IntlDateFormatter::setTimeZoneId</refname>
<refname>datefmt_set_timezone_id</refname>
<refpurpose>Establecer la zona horaria a usar</refpurpose>
</refnamediv>
<refsynopsisdiv>
<warning>
&warn.deprecated.function.5-5-0.removed.7-0-0.alternatives;
<simplelist role="alternatives">
<member><function>IntlDateFormatter::setTimeZone</function></member>
</simplelist>
</warning>
</refsynopsisdiv>
<refsect1 role="description">
&reftitle.description;
<para>
&style.oop;
</para>
<methodsynopsis>
<modifier>public</modifier> <type>bool</type><methodname>IntlDateFormatter::setTimeZoneId</methodname>
<methodparam><type>string</type><parameter>zone</parameter></methodparam>
</methodsynopsis>
<para>
&style.procedural;
</para>
<methodsynopsis>
<type>bool</type><methodname>datefmt_set_timezone_id</methodname>
<methodparam><type>IntlDateFormatter</type><parameter>fmt</parameter></methodparam>
<methodparam><type>string</type><parameter>zone</parameter></methodparam>
</methodsynopsis>
<para>
Establece la zona horaria a usar.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>fmt</parameter></term>
<listitem>
<para>
El recurso del formatedor.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>zone</parameter></term>
<listitem>
<para>
La cadena que contiene el ID de la zona horaria a usar.
Si es &null; o una cadena vacía, se usa la zona horaria predeterminada en tiempo de ejecución.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<para>
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>7.0.0</entry>
<entry>
Esta función ha sido eliminada.
</entry>
</row>
<row>
<entry>5.5.0</entry>
<entry>
Esta función está obsoleta.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<example>
<title>Ejemplo de <function>datefmt_set_timezone_id</function></title>
<programlisting role="php">
<![CDATA[
<?php
$fmt = datefmt_create(
'en_US',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'America/Los_Angeles',
IntlDateFormatter::GREGORIAN
);
echo 'El ID de la zona horaria del formateador es : ' . datefmt_get_timezone_id($fmt);
datefmt_set_timezone_id($fmt,'CN');
echo 'Ahora el ID de la zona horaria del formateador es : ' . datefmt_get_timezone_id($fmt);
?>
]]>
</programlisting>
</example>
<example>
<title>Ejemplo orientado a objetos</title>
<programlisting role="php">
<![CDATA[
<?php
$fmt = new IntlDateFormatter(
'en_US',
IntlDateFormatter::FULL,
IntlDateFormatter::FULL,
'America/Los_Angeles',
IntlDateFormatter::GREGORIAN
);
echo 'El ID de la zona horaria del formateador es : ' . $fmt->getTimezoneId();
$fmt->setTimezoneId('CN');
echo 'Ahora el ID de la zona horaria del formateador es : ' . $fmt->getTimezoneId();
?>
]]>
</programlisting>
</example>
&example.outputs;
<screen>
<![CDATA[
El ID de la zona horaria del formateador es : America/Los_Angeles
Ahora el ID de la zona horaria del formateador es : CN
]]>
</screen>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>datefmt_get_timezone_id</function></member>
<member><function>datefmt_create</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,61 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1634a886415d0ab4df195fe49d18a1c150b70758 Maintainer: chuso Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<!-- State: deprecated -->
<book xml:id="book.mime-magic" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Mimetype</title>
<!-- {{{ preface -->
<preface xml:id="intro.mime-magic">
&reftitle.intro;
<warning>
<para>
Esta extensión está obsoleta debido a que la extensión de PECL
<link linkend="book.fileinfo">Fileinfo</link>
proporciona la misma funcionalidad (y más) de una manera mucho más limpia.
</para>
</warning>
<para>
Las funciones de este módulo intentan adivinar el tipo de contenido
y la codificación de un fichero buscando ciertas
secuencias de bytes <emphasis>mágicas</emphasis> en posiciones
específicas dentro del mismo. Aunque no es una aproximación a prueba
de balas, la heurística usada realiza un buen trabajo.
</para>
<para>
Esta extensión está derivada del módulo mod_mime_magic de Apache,
que está basado a su vez en el comando <filename>file</filename>
mantenido por Ian F. Darwin. Vea el código fuente para
más información sobre el histórico y el copyright.
</para>
</preface>
<!-- }}} -->
&reference.mime-magic.setup;
&reference.mime-magic.constants;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,76 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: seros Status: ready -->
<section xml:id="mime-magic.installation" xmlns="http://docbook.org/ns/docbook">
&reftitle.install;
<warning>
<para>
Las extensiones de Mimetype han sido eliminadas en PHP 5.3.0 a favor de <link
linkend="book.fileinfo">Fileinfo</link>.
</para>
</warning>
<para>
Debe compilar PHP con el conmutador de configuración
<option role="configure">--with-mime-magic</option> para obtener soporte de
las funciones de mime-type. La extensión necesita una copia del fichero
<filename>magic</filename> simplificado, distribuido con httpd de Apache.
</para>
<note>
<para>
La opción de configuración ha sido cambiado de
<option role="configure">--enable-mime-magic</option>
a <option role="configure">--with-mime-magic</option> desde PHP 4.3.2
</para>
</note>
<note>
<para>
Esta extensión no es capaz de manejar el fichero
<filename>magic</filename> comletamente adornado que generalmente viene con
las distribuciones estándar de Linux, y que se supone va a usarse con
las versiones recientes del comando <filename>file</filename>.
</para>
</note>
<note>
<title>Nota a los usuaricos de Win32</title>
<para>
Para usar este módulo en un entorno Windows debe establecer la ruta
al fichero incluido, <filename>magic.mime</filename>, en su &php.ini;.
</para>
<para>
<example>
<title>Establecer la ruta a <filename>magic.mime</filename></title>
<programlisting>
<![CDATA[
mime_magic.magicfile = "$PHP_INSTALL_DIR\magic.mime"
]]>
</programlisting>
</example>
</para>
<para>
Recuerde sustituir <filename>$PHP_INSTALL_DIR</filename> por la ruta
real a PHP en el ejemplo de arriba. P.ej.
<filename class="directory">c:\php</filename>
</para>
</note>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,30 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: af4410a7e15898c3dbe83d6ea38246745ed9c6fb Maintainer: seros Status: ready -->
<appendix xml:id="mime-magic.constants" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.constants;
&no.constants;
</appendix>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,90 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: f052ac1bd73549125c3fc3dc68a36d4b0608a16d Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<section xml:id="mime-magic.configuration" xmlns="http://docbook.org/ns/docbook">
&reftitle.runtime;
&extension.runtime;
<para>
<table>
<title>Opciones de configuración de Mimetype</title>
<tgroup cols="4">
<thead>
<row>
<entry>&Name;</entry>
<entry>&Default;</entry>
<entry>&Changeable;</entry>
<entry>&Changelog;</entry>
</row>
</thead>
<tbody>
<row>
<entry><link linkend="ini.mime-magic.debug">mime_magic.debug</link></entry>
<entry>"0"</entry>
<entry>PHP_INI_SYSTEM</entry>
<entry>Disponible desde PHP 5.0.0.</entry>
</row>
<row>
<entry><link linkend="ini.mime-magic.magicfile">mime_magic.magicfile</link></entry>
<entry>"/path/to/php/magic.mime"</entry>
<entry>PHP_INI_SYSTEM</entry>
<entry>Disponible desde PHP 4.3.0.</entry>
</row>
</tbody>
</tgroup>
</table>
&ini.php.constants;
</para>
&ini.descriptions.title;
<para>
<variablelist>
<varlistentry xml:id="ini.mime-magic.debug">
<term>
<parameter>mime_magic.debug</parameter>
<type>bool</type>
</term>
<listitem>
<para>
Habilitar/deshabilitar la depuración.
</para>
</listitem>
</varlistentry>
<varlistentry xml:id="ini.mime-magic.magicfile">
<term>
<parameter>mime_magic.magicfile</parameter>
<type>string</type>
</term>
<listitem>
<para>
La ruta al fichero magic.mime.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,52 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: af4410a7e15898c3dbe83d6ea38246745ed9c6fb Maintainer: seros Status: ready -->
<chapter xml:id="mime-magic.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<!-- {{{ Requirements -->
<section xml:id="mime-magic.requirements">
&reftitle.required;
&no.requirement;
</section>
<!-- }}} -->
<!-- {{{ Installation -->
&reference.mime-magic.configure;
<!-- }}} -->
<!-- {{{ Configuration -->
&reference.mime-magic.ini;
<!-- }}} -->
<!-- {{{ Resources -->
<section xml:id="mime-magic.resources">
&reftitle.resources;
&no.resource;
</section>
<!-- }}} -->
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,13 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 0272dc9ba7a768da323f20e4c36512ab0bdf6e42 Maintainer: andresdzphp Status: ready -->
<!-- EN-Revision: 4a7ddddc27271967b616ad3400cfbe2a9b48212b Maintainer: andresdzphp Status: ready -->
<!-- Reviewed: no -->
<refentry xml:id="function.setcookie" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>setcookie</refname>
<refpurpose>Enviar una cookie</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis role="procedural">
@@ -143,9 +143,9 @@
<term><parameter>httponly</parameter></term>
<listitem>
<para>
Cuando es &true; la cookie será accesible sólo a través del protocolo
HTTP. Esto significa que la cookie no será accesible por lenguajes
de scripting, como JavaScript. Se ha indicado que esta configuración
Cuando es &true; la cookie será accesible sólo a través del protocolo
HTTP. Esto significa que la cookie no será accesible por lenguajes
de scripting, como JavaScript. Se ha indicado que esta configuración
ayuda efectivamente a reducir el robo de identidad a través de ataques XSS (aunque no
es soportada por todos los navegadores). pero esa afirmación se disputa a menudo. Agregado en PHP 5.2.0.
Puede ser &true; o &false;
@@ -332,18 +332,10 @@ one : cookieone
Se puede utilizar buffering de salida para enviar output anterior a
la llamada a esta función, de modo que todo el output hacia el browser
sea almacenado en el servidor hasta que lo envíe. Para hacer ésto
invoque en su script a <function>ob_start</function> y
invoque en su script a <function>ob_start</function> y
<function>ob_end_flush</function>, o active la directiva de configuración
<literal>output_buffering</literal> en el
archivo &php.ini; o en los archivos de configuración del servidor.
</para>
</note>
<note>
<para>
Si la directiva de PHP <link linkend="ini.register-globals">register_globals</link>
está en <literal>on</literal> los valores de las cookies también serán convertidos
en variables. En el ejemplo de más abajo,<varname>$TestCookie</varname> existirá.
Se recomienda simplemente utilizar <varname>$_COOKIE</varname>.
archivo &php.ini; o en los archivos de configuración del servidor.
</para>
</note>
<para>

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 7279eb69e5c0cc54a327d39897cd38d0adef0b50 Maintainer: seros Status: ready -->
<!-- EN-Revision: 4a7ddddc27271967b616ad3400cfbe2a9b48212b Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<appendix xml:id="session.examples" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
@@ -85,11 +85,6 @@ unset($_SESSION['count']);
de restarurar una referencia a otra variable.
</para>
</warning>
<warning>
<para>
register_globals sobreescribirá las variables en el ámbito global, cuyos nombres son compartidos con las variables de sesión. Por favor véase <link linkend="security.globals">Uso de Register Globals</link> para más detalles.
</para>
</warning>
<note>
<para>
Las sesiones basadas en ficheros (lo predeterminado en PHP) bloquean el fichero de sesión una vez
@@ -109,7 +104,7 @@ unset($_SESSION['count']);
</para>
</note>
</section>
<section xml:id="session.idpassing">
<title>Pasar el ID de Sesión</title>
<para>
@@ -146,7 +141,7 @@ unset($_SESSION['count']);
permite personalizar el separador de argumentos. Para una conformidad completa con
XHTML, especifique &amp;amp; allí.
</para>
</note>
</note>
</para>
<para>
Alternativamente, se puede usar la constante <constant>SID</constant>, que está
@@ -196,13 +191,13 @@ aquí</a>.
</para>
<note>
<para>
Se asume que las URL no relativas apuntan a sitios externos y
Se asume que las URL no relativas apuntan a sitios externos y
por lo tanto no añaden <constant>SID</constant>, ya que sería un riesgo para la seguridad
filtrar <constant>SID</constant> a un servidor diferente.
</para>
</note>
</section>
<section xml:id="session.customhandler">
<title>Gestores de Sesión Personalizados</title>
<para>

View File

@@ -1,170 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 2f0cfaf4060b232835537001936d20b0a1e2a2d6 Maintainer: seros Status: ready -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.session-register">
<refnamediv>
<refname>session_register</refname>
<refpurpose>Registrar una o más variables globales con la sesión actual</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>session_register</methodname>
<methodparam><type>mixed</type><parameter>name</parameter></methodparam>
<methodparam choice="opt"><type>mixed</type><parameter>...</parameter></methodparam>
</methodsynopsis>
<para>
<function>session_register</function> acepta un número variable de
argumentos, cualquiera que pueda ser o una cadena que contenga el nombre de una
variable o una matriz que consista en nombres de variables u otras matrices. Por
cada nombre, <function>session_register</function> registra la variable
global con ese nombre en la sesión actual.
</para>
<para>
También se puede crear una variable de sesión estableciendo simplemente
el miembro apropiado de la matriz <varname>$_SESSION</varname>
o <varname>$HTTP_SESSION_VARS</varname> (PHP &lt; 4.1.0).
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
// El uso de session_register() está obsoleto
$barney = "Un gran dinosaurio púrpura.";
session_register("barney");
// Se prefiere el uso de $_SESSION, a partir de PHP 4.1.0
$_SESSION["zim"] = "Un invasor de otro planeta.";
// La forma antigua era usar $HTTP_SESSION_VARS
$HTTP_SESSION_VARS["bobesponja"] = "Tiene pantalones cuadrados.";
?>
]]>
</programlisting>
</informalexample>
</para>
<para>
Si no se llamó a <function>session_start</function> antes de llamar a esta
función, se hará una llamada implícita a <function>session_start</function> sin
parámetros. <varname>$_SESSION</varname> no imita
este comportamiento y requiere que <function>session_start</function> se use antes.
</para>
&warn.deprecated.function-5-3-0.removed-5-4-0;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>name</parameter></term>
<listitem>
<para>
Una cadena de contiene el nombre de una variable o una matriz que consiste en
nombres de variables u otras matrices.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>...</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
<caution>
<para>
Si quiere que su script funcione sin tener en cuenta <link
linkend="ini.register-globals">register_globals</link>, necesita usar
en su lugar la matriz <varname>$_SESSION</varname> ya que
las entradas de <varname>$_SESSION</varname> se registran automáticamente. Si
su script usa <function>session_register</function>, no funcionará
en entornos donde la directiva de PHP <link
linkend="ini.register-globals">register_globals</link> esté deshabilitada.
</para>
</caution>
&note.registerglobals;
<caution>
<para>
Esto registra una variable <emphasis>global</emphasis>. Si no desea
registrar una variable de sesión desde dentro de una función, necesita asegurarse
de hacerla global usando la palabra clave <link
linkend="language.variables.scope"><command>global</command></link>
o la matriz <varname>$GLOBALS[]</varname>, o use las matrices de
sesión especiales como está anotado debajo.
</para>
</caution>
<caution>
<para>
Si está usando <varname>$_SESSION</varname>
(o <varname>$HTTP_SESSION_VARS</varname>), no use
<function>session_register</function>,
<function>session_is_registered</function>, y
<function>session_unregister</function>.
</para>
</caution>
<note>
<para>
Actualmente es imposible registrar variables de recursos en una sesión.
Por ejemplo, no se puede crear una conexión a una base de datos y almacenar el
id de conexión como una variable de sesión y esperar que la conexión aún sea
válida la siguiente vez que se restaure la sesión. Las funciones de PHP que devuelven un
recurso están identificadas por tener un tipo de retorno de
<literal>resource</literal> en sus definiciones de función. Una lista de
funciones que devuelven recursos está disponible en el apéndice <link
linkend="resource">tipos de recursos</link>.
</para>
<para>
Si se usa <varname>$_SESSION</varname> (o <varname>$HTTP_SESSION_VARS</varname>
para PHP 4.0.6 o anterior), asigne valores a
<varname>$_SESSION</varname>. Por ejemplo: $_SESSION['var'] = 'ABC';
</para>
</note>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><function>session_is_registered</function></member>
<member><function>session_unregister</function></member>
<member><varname>$_SESSION</varname></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 7dc5a6466b5c49cd712fc19a520f106b4d2d1110 Maintainer: seros Status: ready -->
<!-- EN-Revision: 3e08a8aae657492bdcdc7c550099ddf072042fa9 Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<section xml:id="session.configuration" xmlns="http://docbook.org/ns/docbook">
&reftitle.runtime;
@@ -234,18 +234,6 @@
<entry>PHP_INI_ALL</entry>
<entry>Eliminado en PHP 7.1.0.</entry>
</row>
<row>
<entry><link linkend="ini.session.bug-compat-42">session.bug_compat_42</link></entry>
<entry>"1"</entry>
<entry>PHP_INI_ALL</entry>
<entry>Disponible desde PHP 4.3.0. Eliminado en PHP 5.4.0.</entry>
</row>
<row>
<entry><link linkend="ini.session.bug-compat-warn">session.bug_compat_warn</link></entry>
<entry>"1"</entry>
<entry>PHP_INI_ALL</entry>
<entry>Disponible desde PHP 4.3.0. Eliminado en PHP 5.4.0.</entry>
</row>
</tbody>
</tgroup>
</table>
@@ -776,53 +764,6 @@
</listitem>
</varlistentry>
<varlistentry xml:id="ini.session.bug-compat-42">
<term>
<parameter>session.bug_compat_42</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Las versiones de PHP 4.2.3 y anteriores tienen una característica/error no documentada que
permite inicializar una variable de sesión en el ámbito global,
aunque <link linkend="ini.register-globals">register_globals</link>
esté deshabilitado. PHP 4.3.0 y posteriores le avisarán, si se usa esta característica,
y si <link linkend="ini.session.bug-compat-warn">
session.bug_compat_warn</link> también está habilitado. Esta característica/error puede ser
desactivada deshabilitando esta directiva.
</simpara>
<note>
<simpara>
Eliminado en PHP 5.4.0.
</simpara>
</note>
</listitem>
</varlistentry>
<varlistentry xml:id="ini.session.bug-compat-warn">
<term>
<parameter>session.bug_compat_warn</parameter>
<type>boolean</type>
</term>
<listitem>
<simpara>
Las versiones de PHP 4.2.3 y anteriores tienen una característica/error no documentada que
permite inicializar una variable de sesión en el ámbito global,
aunque <link linkend="ini.register-globals">register_globals</link>
esté deshabilitado. PHP 4.3.0 y posteriores le avisarán, si se usa esta característica
habilitando
<link linkend="ini.session.bug-compat-42">session.bug_compat_42</link>
y <link linkend="ini.session.bug-compat-warn">
session.bug_compat_warn</link>.
</simpara>
<note>
<simpara>
Eliminado en PHP 5.4.0.
</simpara>
</note>
</listitem>
</varlistentry>
<varlistentry xml:id="ini.session.sid-length">
<term>
<parameter>session.sid_length</parameter>
@@ -1048,14 +989,6 @@
</variablelist>
</para>
<para>
El ajuste de configuración
<link
linkend="ini.register-globals"><literal>register_globals</literal></link>
influye en cómo las variables de sesión se
almacenan y se restablecen.
</para>
<para>
El progreso de subida no será registrado a no ser que
session.upload_progress.enabled esté habilitado, y la variable

View File

@@ -1,54 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1ca585d841f819181c7448f7d3d1da1354221e77 Maintainer: edwincartagenah Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<!-- State: new -->
<book xml:id="book.spl-types" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Manejo de tipos de SPL</title>
<titleabbrev>Tipos de SPL</titleabbrev>
<!-- {{{ preface -->
<preface xml:id="intro.spl-types">
&reftitle.intro;
<para>
Esta extensión tiene como objeto ayudar a hacer de PHP un lenguaje con una tipificación
más fuerte, por lo que puede ser una buena alternativa a la declaración de tipos escalares.
Proporciona diferentes clases de manejo de tipos tales como
<type>integer</type>, <type>float</type>, <type>bool</type>, <type>enum</type> y <type>string</type>
</para>
&warn.experimental;
</preface>
<!-- }}} -->
&reference.spl-types.setup;
&reference.spl-types.spltype;
&reference.spl-types.splint;
&reference.spl-types.splfloat;
&reference.spl-types.splenum;
&reference.spl-types.splbool;
&reference.spl-types.splstring;
</book>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,31 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: edwincartagenah Status: ready -->
<section xml:id="spl-types.installation" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.install;
<para>
&pecl.info;
<link xlink:href="&url.pecl.package;spl_types"/>.
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,44 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 4de5cce5d886bf7ea08db8583141ff9715b47073 Maintainer: edwincartagenah Status: ready -->
<!-- Reviewed: yes Maintainer: edwincartagenah -->
<section xml:id="spl-types.constants" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.constants;
&extension.constants;
<para>
<variablelist>
<varlistentry xml:id="constant.--default">
<term>
<constant>__default</constant>
(A cada objeto SPL_Types le pertenece una constante __default donde se almacena el valor del objeto. <type>int/float/bool/enum</type>)
</term>
<listitem>
<simpara>
</simpara>
</listitem>
</varlistentry>
</variablelist>
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,27 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: yago Status: ready -->
<reference xml:id="ref.spl-types" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Tipo de &Functions; SPL</title>
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,59 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: yago Status: ready -->
<chapter xml:id="spl-types.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<section xml:id="spl-types.requirements">
&reftitle.required;
&no.requirement;
</section>
<section xml:id="spl-types.installation">
&reftitle.install;
<para>
&pecl.moved;
</para>
<para>
&pecl.info;
<link xlink:href="&url.pecl.package;SPL_Types">&url.pecl.package;SPL_Types</link>.
</para>
<para>
&pecl.windows.download;
</para>
</section>
<section xml:id="spl-types.configuration">
&reftitle.runtime;
&no.config;
</section>
<section xml:id="spl-types.resources">
&reftitle.resources;
&no.resource;
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,154 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: b8758b0605e80c4e3610137b7502a6abeea5c69b Maintainer: andresdzphp Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<phpdoc:classref xml:id="class.splbool" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>La clase SplBool</title>
<titleabbrev>SplBool</titleabbrev>
<partintro>
<!-- {{{ SplBool intro -->
<section xml:id="splbool.intro">
&reftitle.intro;
<para>
La clase SplBool es usada para forzar el uso del tipo booleano.
</para>
</section>
<!-- }}} -->
<section xml:id="splbool.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>SplBool</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>SplBool</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>SplEnum</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Constants</classsynopsisinfo>
<fieldsynopsis>
<modifier>const</modifier>
<type>boolean</type>
<varname linkend="splbool.constants.default">SplBool::__default</varname>
<initializer>&false;</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>boolean</type>
<varname linkend="splbool.constants.false">SplBool::false</varname>
<initializer>&false;</initializer>
</fieldsynopsis>
<fieldsynopsis>
<modifier>const</modifier>
<type>boolean</type>
<varname linkend="splbool.constants.true">SplBool::true</varname>
<initializer>&true;</initializer>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.splenum')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ SplBool constants -->
<section xml:id="splbool.constants">
&reftitle.constants;
<variablelist>
<varlistentry xml:id="splbool.constants.default">
<term><constant>SplBool::__default</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="splbool.constants.false">
<term><constant>SplBool::false</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
<varlistentry xml:id="splbool.constants.true">
<term><constant>SplBool::true</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
<!-- {{{ examples -->
<section xml:id="splbool.examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de uso de <classname>SplBool</classname></title>
<programlisting role="php">
<![CDATA[
<?php
$true = new SplBool(true);
if ($true) {
echo "TRUE\n";
}
$false = new SplBool;
if ($false) {
echo "FALSE\n";
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
TRUE
]]>
</screen>
</example>
</para>
</section>
<!-- }}} -->
</partintro>
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,150 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: b8758b0605e80c4e3610137b7502a6abeea5c69b Maintainer: andresdzphp Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<phpdoc:classref xml:id="class.splenum" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>La clase SplEnum</title>
<titleabbrev>SplEnum</titleabbrev>
<partintro>
<!-- {{{ SplEnum intro -->
<section xml:id="splenum.intro">
&reftitle.intro;
<para>
SplEnum proporciona la capacidad para emular y crear nativamente en PHP objetos
de enumeración.
</para>
</section>
<!-- }}} -->
<section xml:id="splenum.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>SplEnum</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>SplEnum</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>SplType</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Constantes</classsynopsisinfo>
<fieldsynopsis>
<modifier>const</modifier>
<type>NULL</type>
<varname linkend="splenum.constants.default">SplEnum::__default</varname>
<initializer>&null;</initializer>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.splenum')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.spltype')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ SplEnum constants -->
<section xml:id="splenum.constants">
&reftitle.constants;
<variablelist>
<varlistentry xml:id="splenum.constants.default">
<term><constant>SplEnum::__default</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
<!-- {{{ examples -->
<section xml:id="splenum.examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de uso de <classname>SplEnum</classname></title>
<programlisting role="php">
<![CDATA[
<?php
class Month extends SplEnum {
const __default = self::Enero;
const Enero = 1;
const Febrero = 2;
const Marzo = 3;
const Abril = 4;
const Mayo = 5;
const Junio = 6;
const Julio = 7;
const Agosto = 8;
const Septiembre = 9;
const Octubre = 10;
const Noviembre = 11;
const Diciembre = 12;
}
echo new Month(Month::Junio) . PHP_EOL;
try {
new Month(13);
} catch (UnexpectedValueException $uve) {
echo $uve->getMessage() . PHP_EOL;
}
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
6
El valor no es un const en la enumeración de la clase Month
]]>
</screen>
</example>
</para>
</section>
<!-- }}} -->
</partintro>
&reference.spl-types.entities.splenum;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,97 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: b8758b0605e80c4e3610137b7502a6abeea5c69b Maintainer: edwincartagenah Status: ready -->
<refentry xml:id="splenum.getconstlist" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>SplEnum::getConstList</refname>
<refpurpose>Devuelve todas las constantes (o valores posibles) como un array</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<modifier>public</modifier> <type>array</type><methodname>SplEnum::getConstList</methodname>
<methodparam choice="opt"><type>bool</type><parameter>include_default</parameter><initializer>&false;</initializer></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>include_default</parameter></term>
<listitem>
<para>
Ya sea para incluir una propiedad <literal>__default</literal>.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>SplEnum::getConstList</function></title>
<programlisting role="php">
<![CDATA[
<?php
$bool = new SplBool;
var_dump($bool->getConstList(true));
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
array(3) {
["__default"]=>
bool(false)
["false"]=>
bool(false)
["true"]=>
bool(true)
}
]]>
</screen>
</example>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,132 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 3cf1fede294079c70ae7c795dbe47ada7f48640d Maintainer: aeoris Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<phpdoc:classref xml:id="class.splfloat" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>La clase SplFloat</title>
<titleabbrev>SplFloat</titleabbrev>
<partintro>
<!-- {{{ SplFloat intro -->
<section xml:id="splfloat.intro">
&reftitle.intro;
<para>
La clase SplFloat se utiliza para hacer cumplir el uso correcto del tipo de dato float.
</para>
</section>
<!-- }}} -->
<section xml:id="splfloat.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>SplFloat</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>SplFloat</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>SplType</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Constantes</classsynopsisinfo>
<fieldsynopsis>
<modifier>const</modifier>
<type>float</type>
<varname linkend="splfloat.constants.default">SplFloat::__default</varname>
<initializer>0</initializer>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.spltype')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ SplFloat constants -->
<section xml:id="splfloat.constants">
&reftitle.constants;
<variablelist>
<varlistentry xml:id="splfloat.constants.default">
<term><constant>SplFloat::__default</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
<!-- {{{ examples -->
<section xml:id="splfloat.examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de uso de <classname>SplFloat</classname></title>
<programlisting role="php">
<![CDATA[
<?php
$float = new SplFloat(3.154);
$newFloat = new SplFloat(3);
try {
$float = 'Intente hacer casteo a un valor string sólo por diversión';
} catch (UnexpectedValueException $uve) {
echo $uve->getMessage() . PHP_EOL;
}
echo $float . PHP_EOL;
echo $newFloat . PHP_EOL;
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
El valor no es float
3.154
3
]]>
</screen>
</example>
</para>
</section>
<!-- }}} -->
</partintro>
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,129 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 2c21f12e07962ab7ca52f1c92dc5114b07087d87 Maintainer: andresdzphp Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<phpdoc:classref xml:id="class.splint" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>La clase SplInt</title>
<titleabbrev>SplInt</titleabbrev>
<partintro>
<!-- {{{ SplInt intro -->
<section xml:id="splint.intro">
&reftitle.intro;
<para>
La clase SplInt se utiliza para forzar la tipificación fuerte del tipo integer.
</para>
</section>
<!-- }}} -->
<section xml:id="splint.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>SplInt</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>SplInt</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>SplType</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Constantes</classsynopsisinfo>
<fieldsynopsis>
<modifier>const</modifier>
<type>integer</type>
<varname linkend="splint.constants.default">SplInt::__default</varname>
<initializer>0</initializer>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.spltype')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ SplInt constants -->
<section xml:id="splint.constants">
&reftitle.constants;
<variablelist>
<varlistentry xml:id="splint.constants.default">
<term><constant>SplInt::__default</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
<!-- {{{ examples -->
<section xml:id="splint.examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de uso de <classname>SplInt</classname></title>
<programlisting role="php">
<![CDATA[
<?php
$int = new SplInt(94);
try {
$int = 'Intentar amoldar un valor de tipo string por diversión';
} catch (UnexpectedValueException $uve) {
echo $uve->getMessage() . PHP_EOL;
}
echo $int . PHP_EOL;
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
Value not an integer
94
]]>
</screen>
</example>
</para>
</section>
<!-- }}} -->
</partintro>
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,134 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 50849115569da4ebf240f73d68923995881f9653 Maintainer: seros Status: ready -->
<!-- Reviewed: yes Maintainer: seros -->
<phpdoc:classref xmlns:phpdoc="http://php.net/ns/phpdoc" xml:id="class.splstring" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>La clase SplString</title>
<titleabbrev>SplString</titleabbrev>
<partintro>
<!-- {{{ SplString intro -->
<section xml:id="splstring.intro">
&reftitle.intro;
<para>
La clase SplString se utiliza para forzar la tipificación fuerte de tipo string.
</para>
</section>
<!-- }}} -->
<section xml:id="splstring.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>SplString</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<classname>SplString</classname>
</ooclass>
<ooclass>
<modifier>extends</modifier>
<classname>SplType</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Constantes</classsynopsisinfo>
<fieldsynopsis>
<modifier>const</modifier>
<type>string</type>
<varname linkend="splstring.constants.default">SplString::__default</varname>
<initializer>''</initializer>
</fieldsynopsis>
<classsynopsisinfo role="comment">&InheritedMethods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.spltype')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ SplString constants -->
<section xml:id="splstring.constants">
&reftitle.constants;
<variablelist>
<varlistentry xml:id="splstring.constants.default">
<term><constant>SplString::__default</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
<!-- {{{ examples -->
<section xml:id="splstring.examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de uso de <classname>SplString</classname></title>
<programlisting role="php">
<![CDATA[
<?php
$string = new SplString("Probando");
try {
$string = array();
} catch (UnexpectedValueException $uve) {
echo $uve->getMessage() . PHP_EOL;
}
var_dump($string);
echo $string; // Muesta "Probando"
?>
]]>
</programlisting>
&example.outputs;
<screen>
<![CDATA[
El valor no es un string
object(SplString)#1 (1) {
["__default"]=>
string(7) "Probando"
}
Probando
]]>
</screen>
</example>
</para>
</section>
<!-- }}} -->
</partintro>
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,93 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: b8758b0605e80c4e3610137b7502a6abeea5c69b Maintainer: andresdzphp Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<phpdoc:classref xml:id="class.spltype" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>La clase SplType</title>
<titleabbrev>SplType</titleabbrev>
<partintro>
<!-- {{{ SplType intro -->
<section xml:id="spltype.intro">
&reftitle.intro;
<para>
La clase padre para todos los tipos SPL.
</para>
</section>
<!-- }}} -->
<section xml:id="spltype.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>SplType</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<modifier>abstract</modifier> <classname>SplType</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<classsynopsisinfo role="comment">Constantes</classsynopsisinfo>
<fieldsynopsis>
<modifier>const</modifier>
<type>NULL</type>
<varname linkend="spltype.constants.default">SplType::__default</varname>
<initializer>&null;</initializer>
</fieldsynopsis>
<classsynopsisinfo role="comment">&Methods;</classsynopsisinfo>
<xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.spltype')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[1])" />
</classsynopsis>
<!-- }}} -->
</section>
<!-- {{{ SplType constants -->
<section xml:id="spltype.constants">
&reftitle.constants;
<variablelist>
<varlistentry xml:id="spltype.constants.default">
<term><constant>SplType::__default</constant></term>
<listitem>
<para></para>
</listitem>
</varlistentry>
</variablelist>
</section>
<!-- }}} -->
</partintro>
&reference.spl-types.entities.spltype;
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,77 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: c8ea2d8397fa13bb5f4b0a7bddbe643d582d0dc6 Maintainer: edwincartagenah Status: ready -->
<refentry xml:id="spltype.construct" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>SplType::__construct</refname>
<refpurpose>Crea un valor nuevo de algún tipo de dato</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<methodname>SplType::__construct</methodname>
<methodparam choice="opt"><type>mixed</type><parameter>initial_value</parameter></methodparam>
<methodparam choice="opt"><type>bool</type><parameter>strict</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>initial_value</parameter></term>
<listitem>
<para>
Tipo de dato y valor predeterminado que depende de la extensión de la clase.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>strict</parameter></term>
<listitem>
<para>
Si se va a establecer la rigurosidad o lo estricto del objeto.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="errors">
&reftitle.errors;
<para>
Lanza un <classname>UnexpectedValueException</classname> si se proporciona
un tipo de dato incompatible.
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,138 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 1690f24f52c8b814536c9dc8dab1a327c65e1adb Maintainer: jesusruiz Status: ready -->
<refentry xml:id="function.import-request-variables" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>import_request_variables</refname>
<refpurpose>Importar variables GET/POST/Cookie en el ámbito global</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>bool</type><methodname>import_request_variables</methodname>
<methodparam><type>string</type><parameter>types</parameter></methodparam>
<methodparam choice="opt"><type>string</type><parameter>prefix</parameter></methodparam>
</methodsynopsis>
<para>
Importa las variables GET/POST/Cookie en el ámbito global. Esto es útil si
ha deshabilitado <link linkend="ini.register-globals">register_globals</link>,
pero le gustaría ver algunas variables en el ámbito global.
</para>
<para>
Si está interesado en importar otras variables en el ámbito global,
como <varname>$_SERVER</varname>, considere el uso de <function>extract</function>.
</para>
&warn.deprecated.function-5-3-0.removed-5-4-0;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>types</parameter></term>
<listitem>
<para>
Usando el parámetro <parameter>types</parameter>, puede especificar
cuáles variables de petición deben importarse. Puede usar los caracteres 'G', 'P' y 'C'
respectivamente para indicar GET, POST y Cookie. Estos caracteres
no son sensibles a mayúsculas o minúsculas, por lo que también puede utilizar cualquier combinación de 'g', 'p'
y 'c'. POST incluye la información de archivos cargados mediante POST.
</para>
<note>
<para>
Tenga en cuenta que el orden de las letras es importante, ya que cuando se utiliza
"<literal>GP</literal>", las variables POST sobrescribirán las variables GET con el
mismo nombre. Cualquier otra letra diferente a GPC es descartada.
</para>
</note>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>prefix</parameter></term>
<listitem>
<para>
El nombre de variable prefijo, puede ser colocado antes de nombrar a todas las variables importadas
en el ámbito global. De modo que si tiene un valor GET llamado
"<literal>userid</literal>", y proporciona un prefijo
"<literal>pref_</literal>", entonces obtendrá una variable global llamada
<varname>$pref_userid</varname>.
</para>
<note>
<para>
Aunque el parámetro <parameter>prefix</parameter> es opcional,
recibirá un error de nivel <link linkend="errorfunc.constants.errorlevels.e-notice"><constant>E_NOTICE</constant></link>
si no especifica un prefijo, o especifica una cadena vacía como prefijo.
Este es un riesgo potencial de seguridad. La notificación de aviso de errores
no es mostrada usando el nivel predeterminado de <link
linkend="ini.error-reporting">reporte de errores</link>.
</para>
</note>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
&return.success;
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>Ejemplo de <function>import_request_variables</function></title>
<programlisting role="php">
<![CDATA[
<?php
// Esto importará las variables GET y POST con el prefijo "rvar_"
import_request_variables("gp", "rvar_");
echo $rvar_foo;
?>
]]>
</programlisting>
</example>
</para>
</refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
<simplelist>
<member><varname>$_REQUEST</varname></member>
<member><link linkend="ini.register-globals">register_globals</link></member>
<member><link linkend="language.variables.predefined">Variables Predefinidas</link></member>
<member><function>extract</function></member>
</simplelist>
</para>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,78 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: 005141eea7057cefa4affb62601688090f454a30 Maintainer: seros Status: ready -->
<!-- Reviewed: no Maintainer: andresdzphp -->
<section xml:id="xsl.configuration" xmlns="http://docbook.org/ns/docbook">
&reftitle.runtime;
&extension.runtime;
<para>
<table>
<title>Opciones de configuración de XSL</title>
<tgroup cols="4">
<thead>
<row>
<entry>&Name;</entry>
<entry>&Default;</entry>
<entry>&Changeable;</entry>
<entry>&Changelog;</entry>
</row>
</thead>
<tbody>
<row>
<entry><link linkend="ini.xsl.security-prefs">xsl.security_prefs</link></entry>
<entry>"44"</entry>
<entry>PHP_INI_ALL</entry>
<entry>
Disponible a partir de PHP 5.3.9. Obsoleta a partir de PHP 5.4.0. Eliminada a partir de PHP
7.0.0.
</entry>
</row>
</tbody>
</tgroup>
</table>
&ini.php.constants;
</para>
&ini.descriptions.title;
<para>
<variablelist>
<varlistentry xml:id="ini.xsl.security-prefs">
<term>
<parameter>xsl.security_prefs</parameter>
<type>int</type>
</term>
<listitem>
<para>
Las propiedades de seguridad de libxslt. El valor predeterminado de
(<constant>XSL_SECPREF_DEFAULT</constant>) no es para habilitar las operaciones
de escritura. A partir de PHP 5.4.0
se debe utilizar <function>XSLTProcessor::setSecurityPrefs</function>
en lugar de este ajuste de &php.ini;.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</section>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -7,7 +7,7 @@
<?phpdoc extension-membership="bundled" ?>
<title>Compresión Zlib</title>
<titleabbrev>Zlib</titleabbrev>
<!-- {{{ preface -->
<preface xml:id="intro.zlib">
&reftitle.intro;
@@ -26,7 +26,7 @@
de acceso a ficheros si se prefija el nombre de fichero o la ruta con
<filename>zlib:</filename> cuando se llama a <function>fopen</function>. Esta
característica requiere una biblioteca en tiempo de ejecución en C que provea la
función <literal>fopencookie()</literal>. Hasta ahora, GNU libc parece
función <literal>fopencookie()</literal>. Hasta ahora, GNU libc parece
ser la única biblioteca que ofrece esta característica.
</para>
<para>
@@ -40,12 +40,14 @@
</note>
</preface>
<!-- }}} -->
&reference.zlib.setup;
&reference.zlib.constants;
&reference.zlib.examples;
&reference.zlib.reference;
&reference.zlib.deflatecontext;
&reference.zlib.inflatecontext;
</book>
<!-- Keep this comment at the end of the file

View File

@@ -0,0 +1,68 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<phpdoc:classref xml:id="class.deflatecontext" xmlns:phpdoc="http://php.net/ns/phpdoc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xi="http://www.w3.org/2001/XInclude">
<title>The DeflateContext class</title>
<titleabbrev>DeflateContext</titleabbrev>
<partintro>
<!-- {{{ DeflateContext intro -->
<section xml:id="deflatecontext.intro">
&reftitle.intro;
<para>
A fully opaque class which replaces <literal>zlib.deflate</literal> resources as of PHP 8.0.0.
</para>
</section>
<!-- }}} -->
<section xml:id="deflatecontext.synopsis">
&reftitle.classsynopsis;
<!-- {{{ Synopsis -->
<classsynopsis>
<ooclass><classname>DeflateContext</classname></ooclass>
<!-- {{{ Class synopsis -->
<classsynopsisinfo>
<ooclass>
<modifier>final</modifier>
<classname>DeflateContext</classname>
</ooclass>
</classsynopsisinfo>
<!-- }}} -->
<!-- <classsynopsisinfo role="comment">&Methods;</classsynopsisinfo> -->
<!-- <xi:include xpointer="xmlns(db=http://docbook.org/ns/docbook) xpointer(id('class.deflatecontext')/db:refentry/db:refsect1[@role='description']/descendant::db:methodsynopsis[not(@role='procedural')])"><xi:fallback/></xi:include> -->
</classsynopsis>
<!-- }}} -->
</section>
</partintro>
<!-- &reference.zlib.entities.deflatecontext; -->
</phpdoc:classref>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,126 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.deflate-add" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>deflate_add</refname>
<refpurpose>Incrementally deflate data</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>deflate_add</methodname>
<methodparam><type>DeflateContext</type><parameter>context</parameter></methodparam>
<methodparam><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flush_mode</parameter><initializer><constant>ZLIB_SYNC_FLUSH</constant></initializer></methodparam>
</methodsynopsis>
<para>
Incrementally deflates data in the specified context.
</para>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>context</parameter></term>
<listitem>
<para>
A context created with <function>deflate_init</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
A chunk of data to compress.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flush_mode</parameter></term>
<listitem>
<para>
One of <constant>ZLIB_BLOCK</constant>,
<constant>ZLIB_NO_FLUSH</constant>,
<constant>ZLIB_PARTIAL_FLUSH</constant>,
<constant>ZLIB_SYNC_FLUSH</constant> (default),
<constant>ZLIB_FULL_FLUSH</constant>, <constant>ZLIB_FINISH</constant>.
Normally you will want to set <constant>ZLIB_NO_FLUSH</constant> to
maximize compression, and <constant>ZLIB_FINISH</constant> to terminate
with the last chunk of data. See the <link
xlink:href="http://www.zlib.net/manual.html">zlib manual</link> for a
detailed description of these constants.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Returns a chunk of compressed data, &return.falseforfailure;.
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
If invalid arguments are given, an error of level
<constant>E_WARNING</constant> is generated.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<parameter>context</parameter> expects a <classname>DeflateContext</classname>
instance now; previously, a <type>resource</type> was expected.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>deflate_init</function></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,175 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.deflate-init" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>deflate_init</refname>
<refpurpose>Initialize an incremental deflate context</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis>
<type class="union"><type>DeflateContext</type><type>false</type></type><methodname>deflate_init</methodname>
<methodparam><type>int</type><parameter>encoding</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>options</parameter><initializer>[]</initializer></methodparam>
</methodsynopsis>
<para>
Initializes an incremental deflate context using the specified
<parameter>encoding</parameter>.
</para>
<para>
Note that the <literal>window</literal> option here only sets the window size
of the algorithm, differently from the zlib filters where the same parameter
also sets the encoding to use; the encoding must be set with the
<parameter>encoding</parameter> parameter.
</para>
<para>
Limitation: there is currently no way to set the header information on a GZIP
compressed stream, which are set as follows: GZIP signature
(<literal>\x1f\x8B</literal>); compression method (<literal>\x08</literal>
== DEFLATE); 6 zero bytes; the operating system set to the current system
(<literal>\x00</literal> = Windows, <literal>\x03</literal> = Unix, etc.)
</para>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>encoding</parameter></term>
<listitem>
<para>
One of the <constant>ZLIB_ENCODING_*</constant> constants.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>options</parameter></term>
<listitem>
<para>
An associative array which may contain the following elements:
<variablelist>
<varlistentry>
<term><varname>level</varname></term>
<listitem>
<para>
The compression level in range -1..9; defaults to -1.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>memory</varname></term>
<listitem>
<para>
The compression memory level in range 1..9; defaults to 8.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>window</varname></term>
<listitem>
<para>
The zlib window size (logarithmic) in range <literal>8</literal>..<literal>15</literal>;
defaults to <literal>15</literal>.
zlib changes a window size of <literal>8</literal> to <literal>9</literal>,
and as of zlib 1.2.8 fails with a warning, if a window size of <literal>8</literal>
is requested for <constant>ZLIB_ENCODING_RAW</constant> or <constant>ZLIB_ENCODING_GZIP</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>strategy</varname></term>
<listitem>
<para>
One of <constant>ZLIB_FILTERED</constant>,
<constant>ZLIB_HUFFMAN_ONLY</constant>, <constant>ZLIB_RLE</constant>,
<constant>ZLIB_FIXED</constant> or
<constant>ZLIB_DEFAULT_STRATEGY</constant> (the default).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>dictionary</varname></term>
<listitem>
<para>
A <type>string</type> or an <type>array</type> of <type>strings</type>
of the preset dictionary (default: no preset dictionary).
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Returns a deflate context resource (<literal>zlib.deflate</literal>) on
success, &return.falseforfailure;.
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
If an invalid option is passed to <parameter>options</parameter> or the
context couldn't be created, an error of level <constant>E_WARNING</constant>
is generated.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
On success, this function returns a <classname>DeflateContext</classname> instance now;
previously, a <type>resource</type> was returned.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>deflate_add</function></member>
<member><function>inflate_init</function></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,87 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.inflate-get-read-len" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>inflate_get_read_len</refname>
<refpurpose>Get number of bytes read so far</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>inflate_get_read_len</methodname>
<methodparam><type>InflateContext</type><parameter>context</parameter></methodparam>
</methodsynopsis>
<para>
</para>
&warn.undocumented.func;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>context</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns number of bytes read so far&return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<parameter>context</parameter> expects an <classname>InflateContext</classname>
instance now; previously, a <type>resource</type> was expected.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,85 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.inflate-get-status" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>inflate_get_status</refname>
<refpurpose>Get decompression status</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>int</type><methodname>inflate_get_status</methodname>
<methodparam><type>InflateContext</type><parameter>context</parameter></methodparam>
</methodsynopsis>
<para>
Usually returns either <constant>ZLIB_OK</constant> or <constant>ZLIB_STREAM_END</constant>.
</para>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>context</parameter></term>
<listitem>
<para>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns decompression status&return.falseforfailure;.
</para>
</refsect1>
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<parameter>context</parameter> expects an <classname>InflateContext</classname>
instance now; previously, a <type>resource</type> was expected.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,132 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.inflate-add" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>inflate_add</refname>
<refpurpose>Incrementally inflate encoded data</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis>
<type class="union"><type>string</type><type>false</type></type><methodname>inflate_add</methodname>
<methodparam><type>InflateContext</type><parameter>context</parameter></methodparam>
<methodparam><type>string</type><parameter>data</parameter></methodparam>
<methodparam choice="opt"><type>int</type><parameter>flush_mode</parameter><initializer><constant>ZLIB_SYNC_FLUSH</constant></initializer></methodparam>
</methodsynopsis>
<para>
Incrementally inflates encoded data in the specified <parameter>context</parameter>.
</para>
<para>
Limitation: header information from GZIP compressed data are not made
available.
</para>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>context</parameter></term>
<listitem>
<para>
A context created with <function>inflate_init</function>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>data</parameter></term>
<listitem>
<para>
A chunk of compressed data.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>flush_mode</parameter></term>
<listitem>
<para>
One of <constant>ZLIB_BLOCK</constant>,
<constant>ZLIB_NO_FLUSH</constant>,
<constant>ZLIB_PARTIAL_FLUSH</constant>,
<constant>ZLIB_SYNC_FLUSH</constant> (default),
<constant>ZLIB_FULL_FLUSH</constant>, <constant>ZLIB_FINISH</constant>.
Normally you will want to set <constant>ZLIB_NO_FLUSH</constant> to
maximize compression, and <constant>ZLIB_FINISH</constant> to terminate
with the last chunk of data. See the <link
xlink:href="http://www.zlib.net/manual.html">zlib manual</link> for a
detailed description of these constants.
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Returns a chunk of uncompressed data, &return.falseforfailure;.
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
If invalid parameters are given, inflating the data requires a preset
dictionary, but none is specified, the compressed stream is corrupt or has an
invalid checksum, an error of level <constant>E_WARNING</constant> is
generated.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
<parameter>context</parameter> expects an <classname>InflateContext</classname>
instance now; previously, a <type>resource</type> was expected.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>inflate_init</function></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -0,0 +1,158 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<refentry xml:id="function.inflate-init" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>inflate_init</refname>
<refpurpose>Initialize an incremental inflate context</refpurpose>
</refnamediv>
<refsect1 role="description"><!-- {{{ -->
&reftitle.description;
<methodsynopsis>
<type class="union"><type>InflateContext</type><type>false</type></type><methodname>inflate_init</methodname>
<methodparam><type>int</type><parameter>encoding</parameter></methodparam>
<methodparam choice="opt"><type>array</type><parameter>options</parameter><initializer>[]</initializer></methodparam>
</methodsynopsis>
<para>
Initialize an incremental inflate context with the specified
<parameter>encoding</parameter>.
</para>
</refsect1><!-- }}} -->
<refsect1 role="parameters"><!-- {{{ -->
&reftitle.parameters;
<variablelist>
<varlistentry>
<term><parameter>encoding</parameter></term>
<listitem>
<para>
One of the <constant>ZLIB_ENCODING_*</constant> constants.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>options</parameter></term>
<listitem>
<para>
An associative array which may contain the following elements:
<variablelist>
<varlistentry>
<term><varname>level</varname></term>
<listitem>
<para>
The compression level in range -1..9; defaults to -1.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>memory</varname></term>
<listitem>
<para>
The compression memory level in range 1..9; defaults to 8.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>window</varname></term>
<listitem>
<para>
The zlib window size (logarithmic) in range 8..15; defaults to 15.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>strategy</varname></term>
<listitem>
<para>
One of <constant>ZLIB_FILTERED</constant>,
<constant>ZLIB_HUFFMAN_ONLY</constant>, <constant>ZLIB_RLE</constant>,
<constant>ZLIB_FIXED</constant> or
<constant>ZLIB_DEFAULT_STRATEGY</constant> (the default).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><varname>dictionary</varname></term>
<listitem>
<para>
A <type>string</type> or an <type>array</type> of <type>strings</type>
of the preset dictionary (default: no preset dictionary).
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</listitem>
</varlistentry>
</variablelist>
</refsect1><!-- }}} -->
<refsect1 role="returnvalues"><!-- {{{ -->
&reftitle.returnvalues;
<para>
Returns an inflate context resource (<literal>zlib.inflate</literal>) on
success, &return.falseforfailure;.
</para>
</refsect1><!-- }}} -->
<refsect1 role="errors"><!-- {{{ -->
&reftitle.errors;
<para>
If an invalid encoding or option is passed to <parameter>options</parameter>,
or the context couldn't be created, an error of level
<constant>E_WARNING</constant> is generated.
</para>
</refsect1><!-- }}} -->
<refsect1 role="changelog">
&reftitle.changelog;
<informaltable>
<tgroup cols="2">
<thead>
<row>
<entry>&Version;</entry>
<entry>&Description;</entry>
</row>
</thead>
<tbody>
<row>
<entry>8.0.0</entry>
<entry>
On success, this function returns an <classname>InflateContext</classname> instance now;
previously, a <type>resource</type> was returned.
</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</refsect1>
<refsect1 role="seealso"><!-- {{{ -->
&reftitle.seealso;
<simplelist>
<member><function>inflate_add</function></member>
<member><function>deflate_init</function></member>
</simplelist>
</refsect1><!-- }}} -->
</refentry>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->

View File

@@ -1,164 +0,0 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
<!-- EN-Revision: fbc4ef92fa953823ed73021e462bd291499dc633 Maintainer: jpberdejo Status: ready -->
<!-- Reviewed: no -->
<!-- splitted from ./index.xml, last change in rev 1.66 -->
<chapter xml:id="security.globals" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>Usando Register Globals</title>
&warn.deprecated.feature-5-3-0.removed-5-4-0;
<para>
Quizás el cambio más controversial en <acronym>PHP</acronym> fue cuando el valor predeterminado
para la directiva de <acronym>PHP</acronym> <link linkend="ini.register-globals">
register_globals</link> pasó de ON a OFF en <acronym>PHP</acronym>
<link xlink:href="&url.php.release4.2.0;">4.2.0</link>. La dependencia sobre esta
directiva era bastante común y muchas personas ni siquiera sabía que existía
y asumían sólo que ese era el modo como <acronym>PHP</acronym> funcionaba. Esta página explicará cómo se puede
escribir código inseguro con esta directiva, pero tenga en cuenta que la
directiva en si misma no es insegura sino el uso inapropiado de ella.
</para>
<para>
Cuando está activada, register_globals inyectará los scripts con todo
tipo de variables, como las de peticiones provenientes de formularios <acronym>HTML</acronym>. Esto,
unido al hecho de que <acronym>PHP</acronym> no requiere la inicialización de variables,
significa que es muy fácil escribir código inseguro. Fue una decisión
difícil, pero la comunidad de <acronym>PHP</acronym> decidió desactivar esta directiva por
defecto. Cuando está activada, las personas usan variables que en realidad no se sabe a ciencia cierta
de dónde provienen y solo queda asumir. Las variables internas que son
definidas en el script mismo son mezcladas con los datos requeridos enviados por
los usuarios y al deshabilitar register_globals se cambia esto. Vamos a demostrar
con un ejemplo del uso incorrecto de register_globals:
</para>
<para>
<example>
<title>Ejemplo de uso incorrecto con register_globals = on</title>
<programlisting role="php">
<![CDATA[
<?php
// $authorized = true Se define sólo si el usuario está autenticado
if (authenticated_user()) {
$authorized = true;
}
// Debido a que no se inicializa $authorized como false, esta podría ser
// definida a través de register_globals, como desde GET auth.php?authorized=1
// ¡Por lo tanto, cualquier persona puede verse como autenticada!
if ($authorized) {
include "/highly/sensitive/data.php";
}
?>
]]>
</programlisting>
</example>
</para>
<para>
Cuando está register_globals = on, la lógica anterior podría verse comprometida. Cuando
está deshabilitada, <varname>$authorized</varname> no puede definirse a través de peticiones, así que
estará bien, aunque realmente en general es una buena práctica de programación
inicializar las variables primero. Por ejemplo, en el ejemplo anterior se puede
haber realizado primero algo como <literal>$authorized = false</literal>. Hacer esto
primero significa que el código anterior podría funcionar con register_globals activado o desactivado ya
que los usuarios de forma predeterminada no serían autorizados.
</para>
<para>
Otro ejemplo es aquel de las <link linkend="ref.session">sesiones</link>.
Cuando está register_globals = on, se puede usar también
<varname>$username</varname> en el siguiente ejemplo, pero nuevamente se debe
notar que <varname>$username</varname> también puede provenir de otros
medios, tal como GET (a través de la <acronym>URL</acronym>).
</para>
<para>
<example>
<title>Ejemplo de uso de sesiones con register_globals on u off</title>
<programlisting role="php">
<![CDATA[
<?php
// No se sabría por dónde proviene $username, pero se sabe que $_SESSION es
// para datos de sesión.
if (isset($_SESSION['username'])) {
echo "Hello <b>{$_SESSION['username']}</b>";
} else {
echo "Hello <b>Guest</b><br />";
echo "Would you like to login?";
}
?>
]]>
</programlisting>
</example>
</para>
<para>
Incluso es posible tomar medidas preventivas para advertir cuando se
haga un intento de falsificación. Si se sabe previamente con exactitud el lugar de donde una variable
debería provenir, se puede verificar si los datos enviados
provienen de una clase inapropiada de sumisión. Si bien no
garantiza que los datos no han sido falsificados, esto requiere que un atacante
adivine el medio apropiado para falsificar. Si no importa de donde provienen los datos
requeridos, se puede usar <varname>$_REQUEST</varname> ya que contiene
una mezcla de datos GET, POST y COOKIE. Ver también la sección del manual sobre
el uso de <link linkend="language.variables.external">variables desde fuentes externas
sources</link>.
</para>
<para>
<example>
<title>Detección de envenenamiento simple de variables</title>
<programlisting role="php">
<![CDATA[
<?php
if (isset($_COOKIE['MAGIC_COOKIE'])) {
// MAGIC_COOKIE viene de una cookie.
// ¡Asegúrese de validar la información de la cookie!
} elseif (isset($_GET['MAGIC_COOKIE']) || isset($_POST['MAGIC_COOKIE'])) {
mail("admin@example.com", "Posible intento de ataque", $_SERVER['REMOTE_ADDR']);
echo "Violación de seguridad, el administrador ha sido alertado.";
exit;
} else {
// MAGIC_COOKIE no se establece a través de este REQUEST
}
?>
]]>
</programlisting>
</example>
</para>
<para>
Por supuesto, simplemente deshabilitar register_globals no quiere decir que su código
es seguro. Cada pieza de datos que es remitida, también debe ser
verificada de otras formas. ¡Siempre valide los datos de los usuarios e inicialice
sus variables! Para chequear por variables no inicializadas, se puede usar
<function>error_reporting</function> para mostrar
errores de nivel <constant>E_NOTICE</constant>.
</para>
<para>
Para obtener información sobre la emulación de register_globals activado o desactivado, consulte este <link linkend="faq.misc.registerglobals">FAQ</link>.
</para>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->