mirror of
https://github.com/php/doc-es.git
synced 2026-03-26 00:12:06 +01:00
git-svn-id: https://svn.php.net/repository/phpdoc/es/trunk@330524 c90b9560-bf6c-de11-be94-00142212c4b1
95 lines
3.8 KiB
XML
95 lines
3.8 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<!-- $Revision$ -->
|
|
<!-- EN-Revision: 1634a886415d0ab4df195fe49d18a1c150b70758 Maintainer: chuso Status: ready -->
|
|
<!-- Reviewed: no -->
|
|
<!-- State: experimental -->
|
|
|
|
<book xml:id="book.bcompiler" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<title>Compilador de código de bytes de PHP (bcompiler)</title>
|
|
<titleabbrev>bcompiler</titleabbrev>
|
|
|
|
<preface xml:id="intro.bcompiler">
|
|
&reftitle.intro;
|
|
&warn.experimental;
|
|
<para>
|
|
Bcompiler ha sido escrito por varias razones:
|
|
<simplelist>
|
|
<member>Para codificar un script completamente en una aplicación PHP propietaria</member>
|
|
<member>Para codificar algunas clases y/o funciones en una aplicación PHP propietaria</member>
|
|
<member>
|
|
Para habilitar la producción de aplicaciones php-gtk que podrían usarse en
|
|
escritorios clientes, sin la necesidad de un php.exe.
|
|
</member>
|
|
<member>Para hacer el estudio de viabilidad para un convertidor de PHP a C</member>
|
|
</simplelist>
|
|
La primera de las metas se alcanza usando las funciones
|
|
<function>bcompiler_write_header</function>,
|
|
<function>bcompiler_write_file</function> y
|
|
<function>bcompiler_write_footer</function>.
|
|
Los archivos de códgio de bytes pueden ser
|
|
escritos como no comprimidos o planos.
|
|
Para usar el código de bytes generado simplemente debe incluirlo
|
|
con sentencias include o require.
|
|
</para>
|
|
<para>
|
|
La segunda de estas metas se alcanza usando las funciones
|
|
<function>bcompiler_write_header</function>,
|
|
<function>bcompiler_write_class</function>,
|
|
<function>bcompiler_write_footer</function>,
|
|
<function>bcompiler_read</function>,
|
|
y <function>bcompiler_load</function>. Los archivos de código de bytes pueden
|
|
ser escritos como no comprimidos o planos.
|
|
<function>bcompiler_load</function> Lee un archivo de código de bytes bzip comprimido,
|
|
el cuál tiende a ser 1/3 del tamaño del archivo original.
|
|
</para>
|
|
<para>
|
|
Para crear archivos tipo EXE, bcompiler tiene que usarse con un archivo sapi
|
|
modificado o una versión de PHP que haya sido compilada como un biblioteca compartida. En
|
|
este escenario, bcompiler lee el código de bytes comprimido del final del archivo
|
|
exe.
|
|
</para>
|
|
<para>
|
|
Bcompiler puede mejorar el rendimiento en un 30% cuando se usa solamente con
|
|
código de bytes sin comprimir. Pero tenga en cuenta que el código de byte sin comprimir puede ser
|
|
hasta 5 veces más largo que el código fuente original. Usar la comprensión de
|
|
código de bytes puede ahorrar espacio, pero la descompresión requiere mucho más tiempo
|
|
que analizar una fuente. bcompiler tampoco realiza ninguna optimización de
|
|
código de byte, esto podría añadirse en el futuro...
|
|
</para>
|
|
<para>
|
|
En términos de protección de código es seguro decir que sería imposible
|
|
recrear el código fuente exacto desde donde se construyó, y sin los
|
|
comentarios que acompañan al código fuente. Sería inútil usar
|
|
los códigos de bytes de bcompiler para recrear y modificar una clase. Sin embargo, es
|
|
posible recuperar información de un archivo de código de bytes contruido con bcompiler -
|
|
por lo que no ponga sus contraseñas privadas o similares en él.
|
|
</para>
|
|
</preface>
|
|
|
|
&reference.bcompiler.setup;
|
|
&reference.bcompiler.constants;
|
|
&reference.bcompiler.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
|
|
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
|
|
-->
|
|
|