<HTML ><HEAD ><TITLE >Macros for Automatic Global Variable Creation</TITLE ><META NAME="GENERATOR" CONTENT="Modular DocBook HTML Stylesheet Version 1.7"><LINK REL="HOME" TITLE="PHP Manual" HREF="index.html"><LINK REL="UP" TITLE="Creating Variables" HREF="zend.variables.html"><LINK REL="PREVIOUS" TITLE="Resources" HREF="zend.variables.resource.html"><LINK REL="NEXT" TITLE="Creating Constants" HREF="zend.variables.constant.html"><META HTTP-EQUIV="Content-type" CONTENT="text/html; charset=ISO-8859-1"></HEAD ><BODY CLASS="section" 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" >PHP Manual</TH ></TR ><TR ><TD WIDTH="10%" ALIGN="left" VALIGN="bottom" ><A HREF="zend.variables.resource.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="80%" ALIGN="center" VALIGN="bottom" >Chapter 33. Creating Variables</TD ><TD WIDTH="10%" ALIGN="right" VALIGN="bottom" ><A HREF="zend.variables.constant.html" ACCESSKEY="N" >Next</A ></TD ></TR ></TABLE ><HR ALIGN="LEFT" WIDTH="100%"></DIV ><DIV CLASS="section" ><H1 CLASS="section" ><A NAME="zend.variables.global" ></A >Macros for Automatic Global Variable Creation</H1 ><P > In addition to the macros discussed earlier, a few macros allow easy creation of simple global variables. These are nice to know in case you want to introduce global flags, for example. This is somewhat bad practice, but Table <A HREF="zend.variables.global.html#tab.macros-global-vars" >Table 33-5</A > describes macros that do exactly this task. They don't need any <TT CLASS="envar" >zval</TT > allocation; you simply have to supply a variable name and value. </P ><DIV CLASS="table" ><A NAME="tab.macros-global-vars" ></A ><P ><B >Table 33-5. Macros for Global Variable Creation</B ></P ><TABLE BORDER="1" CLASS="CALSTABLE" ><TBODY ><TR ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" >Macro</TD ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" >Description</TD ></TR ><TR ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" ><TT CLASS="literal" >SET_VAR_STRING(name, value)</TT ></TD ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" >Creates a new string.</TD ></TR ><TR ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" ><TT CLASS="literal" >SET_VAR_STRINGL(name, value, length)</TT ></TD ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" >Creates a new string of the specified length. This macro is faster than <TT CLASS="literal" >SET_VAR_STRING</TT > and also binary-safe.</TD ></TR ><TR ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" ><TT CLASS="literal" >SET_VAR_LONG(name, value)</TT ></TD ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" >Creates a new long.</TD ></TR ><TR ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" ><TT CLASS="literal" >SET_VAR_DOUBLE(name, value)</TT ></TD ><TD WIDTH="50%" ALIGN="LEFT" VALIGN="MIDDLE" >Creates a new double.</TD ></TR ></TBODY ></TABLE ></DIV ></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="zend.variables.resource.html" ACCESSKEY="P" >Prev</A ></TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="index.html" ACCESSKEY="H" >Home</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" ><A HREF="zend.variables.constant.html" ACCESSKEY="N" >Next</A ></TD ></TR ><TR ><TD WIDTH="33%" ALIGN="left" VALIGN="top" >Resources</TD ><TD WIDTH="34%" ALIGN="center" VALIGN="top" ><A HREF="zend.variables.html" ACCESSKEY="U" >Up</A ></TD ><TD WIDTH="33%" ALIGN="right" VALIGN="top" >Creating Constants</TD ></TR ></TABLE ></DIV ></BODY ></HTML >