mirror of
https://github.com/macintoshplus/doc-fr.git
synced 2026-03-30 04:42:24 +02:00
git-svn-id: https://svn.php.net/repository/phpdoc/fr/trunk@274475 c90b9560-bf6c-de11-be94-00142212c4b1
95 lines
3.7 KiB
XML
95 lines
3.7 KiB
XML
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
<!-- $Revision: 1.5 $ -->
|
|
<!-- EN-Revision: 1.2 Maintainer: yannick Status: ready -->
|
|
<!-- Reviewed: yes -->
|
|
<!-- Purpose: basic.php -->
|
|
<!-- Membership: pecl -->
|
|
<!-- State: experimental -->
|
|
|
|
<book xml:id="book.bcompiler" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
|
|
<title>Compilateur bytecode PHP</title>
|
|
<titleabbrev>bcompiler</titleabbrev>
|
|
|
|
<preface xml:id="intro.bcompiler">
|
|
&reftitle.intro;
|
|
&warn.experimental;
|
|
<para>
|
|
Bcompiler a été écrit pour diverses raisons :
|
|
<simplelist>
|
|
<member>Pour encoder un script entier dans une application PHP propriétaire</member>
|
|
<member>Pour encoder quelques fonctions / classes dans une application PHP propriétaire</member>
|
|
<member>
|
|
Pour activer la production d'applications php-gtk qui peuvent être utilisées
|
|
dans des applications bureautiques, sans avoir besoin d'un php.exe.
|
|
</member>
|
|
<member>Pour faire la transition facilement du PHP au C</member>
|
|
</simplelist>
|
|
La première des raisons est possible en utilisant les fonctions
|
|
<function>bcompiler_write_header</function>,
|
|
<function>bcompiler_write_file</function> et
|
|
<function>bcompiler_write_footer</function>.
|
|
Les fichiers bytecode peuvent être écrits compressés ou non.
|
|
Pour utiliser le bytecode généré, vous pouvez simplement l'inclure
|
|
grâce aux instructions include ou require.
|
|
</para>
|
|
<para>
|
|
La deuxième raison est possible en utilisant les fonctions
|
|
<function>bcompiler_write_header</function>,
|
|
<function>bcompiler_write_class</function>,
|
|
<function>bcompiler_write_footer</function>,
|
|
<function>bcompiler_read</function>,
|
|
et <function>bcompiler_load</function>.
|
|
Les fichiers bytecode peuvent être écrits compressés ou non.
|
|
La fonction <function>bcompiler_load</function> lit le fichier bytecode
|
|
compressé, qui représente un tiers de la taille du fichier original.
|
|
</para>
|
|
<para>
|
|
Pour créer les fichiers de type EXE, bcompiler doit être utilisé avec un fichier
|
|
sapi modifié ou une version de PHP qui a été compilé en tant que bibliothèque partagé.
|
|
Dans ce cas, bcompiler lit le bytecode compressé depuis la fin du fichier EXE.
|
|
</para>
|
|
<para>
|
|
Bcompiler peut améliorer les performances d'environ 30% lors de l'utilisation
|
|
de bytecode non compressé uniquement. Mais garder à l'esprit que le bytecode
|
|
non compressé peut représenter une taille 5 fois plus large que le code
|
|
source original. L'utilisation de bytecode compressé prendra moins de place,
|
|
mais la décompression nécessite plus de temps que d'analyser le code source.
|
|
De plus, Bcompiler n'effectue aucune optimisation du bytecode. Cette fonctionnalité
|
|
devrait être ajoutée dans les futures versions...
|
|
</para>
|
|
<para>
|
|
D'un point de vue de la protection du code, l'on peut dire qu'il est
|
|
absolument impossible de recréer le code source exact, tel qu'à l'origine,
|
|
et sans les commentaires originaux. Cependant, il est possible de récupérer
|
|
les données depuis un fichier bytecode Bcompiler - de ce fait, n'y incluez pas
|
|
vos mots de passes personnels.
|
|
</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:"../../../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
|
|
-->
|
|
|