<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd"> <HTML ><HEAD ><TITLE >Phar->getStub</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.79"><LINK REL="HOME" TITLE="Manual do PHP" HREF="index.html"><LINK REL="UP" TITLE="Phar archive stream and classes" HREF="ref.phar.html"><LINK REL="PREVIOUS" TITLE="Phar->getSignature" HREF="function.phar-getsignature.html"><LINK REL="NEXT" TITLE="Phar->getVersion" HREF="function.phar-getversion.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=UTF-8"></HEAD ><BODY CLASS="refentry" BGCOLOR="#FFFFFF" TEXT="#000000" LINK="#0000FF" VLINK="#840084" ALINK="#0000FF" ><DIV CLASS="NAVHEADER" ><TABLE SUMMARY="Header navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TH COLSPAN="3" ALIGN="center" >Manual do PHP</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="function.phar-getsignature.html" ACCESSKEY="P" >Anterior</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" ></TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="function.phar-getversion.html" ACCESSKEY="N" >Próxima</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><H1 ><A NAME="function.phar-getstub" ></A >Phar->getStub</H1 ><DIV CLASS="refnamediv" ><A NAME="AEN174596" ></A ><P > (no version information, might be only in CVS)</P >Phar->getStub -- Return the PHP loader or bootstrap stub of a Phar archive</DIV ><DIV CLASS="refsect1" ><A NAME="AEN174599" ></A ><H2 >Descrição</H2 >string <B CLASS="methodname" >Phar->getStub</B > ( void )<BR ></BR ><P > One of the features that differentiates a Phar archive from other familiar archive formats like tar or zip is that a Phar archive is explicitly designed to be included to allow distributing an application or library that can be run without extraction directly from the archive. In order to accomplish this, Phar archives contain a bootstrap loader, or <TT CLASS="literal" >stub</TT > written in PHP that can perform any action. </P ><DIV CLASS="warning" ><P ></P ><TABLE CLASS="warning" BORDER="1" WIDTH="100%" ><TR ><TD ALIGN="CENTER" ><B >Atenção</B ></TD ></TR ><TR ><TD ALIGN="LEFT" ><P >All stubs must end with <TT CLASS="literal" >__HALT_COMPILER();</TT > or the file is not a valid Phar archive.</P ></TD ></TR ></TABLE ></DIV ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN174610" ></A ><H2 >Valores de retornado</H2 ><P > Returns a string containing the contents of the bootstrap loader (stub) of the current Phar archive. </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN174613" ></A ><H2 >Erros/Excessões</H2 ><P > Throws <B CLASS="classname" >RuntimeException</B > if it is not possible to read the stub from the Phar archive. </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN174617" ></A ><H2 >Exemplos</H2 ><P > <TABLE WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" CLASS="EXAMPLE" ><TR ><TD ><DIV CLASS="example" ><A NAME="AEN174620" ></A ><P ><B >Exemplo 1. A <B CLASS="function" >Phar->getStub()</B > example</B ></P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><code><font color="#000000"> $p = new Phar('/path/to/my.phar', 0, 'my.phar');<br />echo $p->getStub();<br />echo "==NEXT==\n";<br />$p->setStub("<font color="#0000BB"><?php<br /></font><font color="#007700">function </font><font color="#0000BB">__autoload</font><font color="#007700">(</font><font color="#0000BB">$class</font><font color="#007700">)<br />{<br /> include </font><font color="#DD0000">'phar://' </font><font color="#007700">. </font><font color="#0000BB">str_replace</font><font color="#007700">(</font><font color="#DD0000">'_'</font><font color="#007700">, </font><font color="#DD0000">'/'</font><font color="#007700">, </font><font color="#0000BB">$class</font><font color="#007700">);<br />}<br /></font><font color="#0000BB">Phar</font><font color="#007700">::</font><font color="#0000BB">mapPhar</font><font color="#007700">(</font><font color="#DD0000">'myphar.phar'</font><font color="#007700">);<br />include </font><font color="#DD0000">'phar://myphar.phar/startup.php'</font><font color="#007700">;<br /></font><font color="#0000BB">__HALT_COMPILER</font><font color="#007700">();</font><font color="#DD0000">");<br />echo $p</font><font color="#007700">-></font><font color="#DD0000">getStub();</font> </font> </code></TD ></TR ></TABLE ><P >O exemplo acima irá imprimir:</P ><TABLE BORDER="0" BGCOLOR="#E0E0E0" CELLPADDING="5" ><TR ><TD ><PRE CLASS="screen" ><?php __HALT_COMPILER(); ==NEXT== <?php function __autoload($class) { include 'phar://' . str_replace('_', '/', $class); } Phar::mapPhar('myphar.phar'); include 'phar://myphar.phar/startup.php'; __HALT_COMPILER();</PRE ></TD ></TR ></TABLE ></DIV ></TD ></TR ></TABLE > </P ></DIV ><DIV CLASS="refsect1" ><A NAME="AEN174626" ></A ><H2 >Veja também</H2 ><P > <P ></P ><TABLE BORDER="0" ><TBODY ><TR ><TD ><A HREF="function.phar-setstub.html" ><B CLASS="function" >Phar->setStub()</B ></A ></TD ></TR ></TBODY ></TABLE ><P ></P > </P ></DIV ><DIV CLASS="NAVFOOTER" ><HR ALIGN="LEFT" WIDTH="100%"><TABLE SUMMARY="Footer navigation table" WIDTH="100%" BORDER="0" CELLPADDING="0" CELLSPACING="0" ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" ><A HREF="function.phar-getsignature.html" ACCESSKEY="P" >Anterior</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Principal</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="function.phar-getversion.html" ACCESSKEY="N" >Próxima</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Phar->getSignature</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="ref.phar.html" ACCESSKEY="U" >Acima</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Phar->getVersion</TD ></TR ></TABLE ></DIV ></BODY ></HTML >