cvs: phpdoc-ar /language functions.xml

[email protected] ("Hafid Benhadria") Thu, 20 May 2004 19:36:07 -0000
Newsgroups php.doc.ar
Message-ID <cvshafid1085081767@cvsserver>
hafid		Thu May 20 15:36:07 2004 EDT

  Added files:                 
    /phpdoc-ar/language	functions.xml 
  Log:
  First and Complete Translation. From 1.47 en-version.
hafid-20040520153607.txt (text/plain, 20.5 KB)
http://cvs.php.net/co.php/phpdoc-ar/language/functions.xml?r=1.1&p=1
Index: phpdoc-ar/language/functions.xml
+++ phpdoc-ar/language/functions.xml
<?xml version="1.0" encoding="ISO-8859-6"?>
<!-- $Revision: 1.1 $ -->
<!-- EN-Revision: 1.47 Maintainer: hafid Status: ready -->
 <chapter id="language.functions">
  <title>ÇäÏñèÇä &#8220;Functions&#8221;</title>

  <sect1 id="functions.user-defined">
   <title>ÇäÏñèÇä ÇäåïÙÑñîáÉ åæ âÈä ÇäåïÓÊÎÏðå &#8220;User-defined functions&#8221;</title>
 
   <para>
    êåãæ äÏÇäÉ Ãæ ÊïÙÑñîá ÈÇÓÊÎÏÇå ÕêÚÉ æÍèêñÉ ÊÔÈç åÇ êÃÊê: 
   </para>
   <para>
    <example>
     <title>ÔêáÑÉ ÊÔÈêçêñÉ äÊÈêÇæ ÇÓÊÎÏÇåÇÊ ÇäÏñÇäÇÊ</title>
     <programlisting role="php">
<![CDATA[
<?php
function foo ($arg_1, $arg_2, /* ..., */ $arg_n)
{
    echo "ÏÇäÉ åËÇä.\n";
    return $retval;
}
?>
]]>
     </programlisting>
    </example>
   </para>
   
   <!--
    
    èÖÙêÉ func(const $param) ¿
    äÇ ÊçÊå ÒæÏ &#8220;zend&#8221; ÈÊÇÊÇë ÅÐÇ åÇ ÍÏñÏÊç Ãè äÇ.
    äå ÃÑç ÈÊÇÊÇ åæ âÈä&#8230; åÇ çè ÇÓÊÎÏÇåç¿ (Ãè åÇÐÇ ãÇæ&#8230;)
    
    -->
     
   <simpara>
    êåãæ äÃêÉ ÔêáÑÉ PHP ÕÇäÍÉ Ãæ ÊØçÑ Öåæ ÏÇäɬ ÈåÇ áê Ðäã ÏèÇä 
    èÊÙÑêáÇÊ <link linkend="keyword.class">ÃÕæÇá</link>
    ÃÎÑé.
   </simpara>
   <simpara>
    áê PHP 3¬ êÊèÌÈ ÊÙÑêá ÇäÏñèÇä âÈä ÅÍÇäÊçÇ. åËä 
    çÐÇ ÇäåïÊ×äñîÈ äå êÙÏ êÊèÇÌÏ áê PHP 4. <emphasis>ÈÇÓÊËæÇÁ</emphasis> ÙæÏåÇ êÊå 
    ÊÙÑêá ÏÇäÉ åÇ ÔÑ×êÇë åËäåÇ êØçÑ áê ÇäåËÇäêæ 
    ÇäÂÊêñêæ.
   </simpara>
   <para>
    ÙæÏ ÊÙÑêá ÏÇäÉ åÇ È×ÑêâÉ ÔÑ×êñÉ åËäåÇ 
    êØçÑç ÇäåËÇäÇæ¬ áÅæñç ÊÌÈ åÙÇäÌÉ ÊÙÑêáçÇ <emphasis>âÈä</emphasis>
    åæÇÏÇÊçÇ.
   </para>
   <para>
    <example>
     <title>ÇäÏñèÇä ÇäÔñÑ×êñÉ &#8220;Conditional functions&#8221;</title>
     <programlisting role="php">
<![CDATA[
<?php

$makefoo = true;

/* äÇ êåãææÇ åæÇÏÇÉ foo() Çæ×äÇâÇë åæ çæÇ 
   ÈÇÙÊÈÇÑ ÃæñçÇ äêÓÊ åèÌèÏÉ ÈÙÏ 
   äãæ ÈÇåãÇææÇ åæÇÏÇÉ bar() */

bar();

if ($makefoo) {
  function foo ()
  {
    echo "äÓÊ åèÌèÏÇ ÍÊé êÕä ÊæáêÐ ÇäÈÑæÇåÌ ÙæÏê.\n";
  }
}

/* ÇäÂæ¬ êåãæ åæÇÏÇÉ foo() ÈÃåÇæ
   ÈÇÙÊÈÇÑ Ãæñ âêåÉ $makefoo ÊïÔêÑï Åäé ÕÍêÍ &#8220;true&#8221; */

if ($makefoo) foo();

function bar() 
{
  echo "ÃÊèÇÌÏ åÈÇÔÑÉ ÙæÏ ÈÏÁ ÇäÈÑæÇåÌ.\n";
}

?>
]]>
     </programlisting>
    </example>
   </para>
   <para>
    <example>
     <title>ÏèÇä ÏÇÎä ÏèÇä</title>
     <programlisting role="php">
<![CDATA[
<?php
function foo() 
{
  function bar() 
  {
    echo "äÇ ÃÊèÇÌÏ ÍÊé ÊÊå åæÇÏÇÉ foo().\n";
  }
}

/* äÇ êåãææÇ åæÇÏÇÉ bar() ÈÙÏ
   ÈÇÙÊÈÇÑ Ãæñç äÇ êÊèÇÌÏ ÈÙÏ. */

foo();

/* ÇäÂæ¬ êåãææÇ åæÇÏÇÉ bar()¬
   Åæñ åÙÇäÌÉî foo()
   ÌÙäÊç âÇÈäÇ ääèäèÌ. */

bar();

?>  
]]>
     </programlisting>
    </example>
   </para>
   <simpara>
    äÇ ÊÏÙå PHP ÇäÊñÙÈÆÉî ÇäáÇÆâÉî ääÏèÇä ãåÇ êÓÊÍêä 
    ÅÒÇäÉ ÊÙÑêá Ãè ÅÙÇÏÉ ÊÙÑêá ÏèÇä åïÕÑñîÍ ÈçÇ åïÓÈâÇë. 
   </simpara>
   <note>
    <simpara>
     ÊÊÓñðåï ÃÓåÇÁ ÇäÏñèÇä ÈãèæçÇ ÚêÑ åïÊÍÓñðÓÉ äÍÇäÉ ÇäÃÍÑá» åÙ Ðä㬠êïÓÊÍÓæ ÙÇÏÉ 
     åæÇÏÇÉ ÇäÏñèÇä åËäåÇ ÊØçÑ Ùäêç áê ÊÕÑêÍÇÊçÇ.
    </simpara>
   </note>   
   <simpara>
    äÇ ÊÏÙå PHP 3 ÇäÃÙÏÇÏ ÇäåïÊÚêñðÑÉ ääÏäÇÆä &#8220;arguments&#8221; äÏé ÇäÏñèÇä 
    ÍÊé èÅæ ãÇæÊ ÇäÏñäÇÆä ÇäÇáÊÑÇÖêñÉ &#8220;default arguments&#8221; åÏÙèåÉ (ÇÓÊÙÑÖ <link
    linkend="functions.arguments.default">âêå ÇäÏñäêä 
    ÇäÇáÊÑÇÖêñÉ &#8220;Default argument values&#8221;</link>¬ äåÒêÏ åæ ÇäåÙäèåÇÊ). ÊÏÙå PHP 4 ãäÇçåÇ: ÇÓÊÙÑÖ <link
    linkend="functions.variable-arg-list">äèÇÆÍ ÇäÏñäÇÆä ÐÇÊ ÇäÃ×èÇä ÇäåïÊÚêñðÑÉ 
    &#8220;Variable-length argument lists&#8221;</link> èÅÍÇäÇÊ ÇäÏñèÇä ÇäÎÇÕÉ Èà
    <function>func_num_args</function>¬
    <function>func_get_arg</function> è
    <function>func_get_args</function> äåÒêÏ åæ ÇäåÙäèåÇÊ.
   </simpara>

  </sect1>
 
  <sect1 id="functions.arguments">
   <title>ÏäÇÆä ÇäÏñèÇä &#8220;Function arguments&#8221;</title>
 
   <simpara>
    êåãæ ÊåÑêÑ ÇäåÙäèåÇÊ Åäé ÇäÏñèÇä åæ ÎäÇä äÇÆÍÉ ÇäÏñäÇÆä 
    èçê äÇÆÍÉ åïÊÚêñðÑÇÊ è/Ãè ËèÇÈʬ åáÕèäÉ ÈáèÇÕä. 
   </simpara> 
   <para>
    ÊÏÙå PHP ÊåÑêÑ ÇäÏñäÇÆä åæ ÎäÇä ÇäâêåÉ (ÇäÚáÊÑÇÖêÉ)¬ <link
    linkend="functions.arguments.by-reference">ÇäÊñåÑêÑ 
    ÈÇäÅÍÇäÉ &#8220;passing by reference&#8221;</link> è <link
    linkend="functions.arguments.default">âêå ÇäÏñäÇÆä 
    ÇäÇáÊÑÇÖêñÉ &#8220;default argument values&#8221;</link>. èÊïÏòÙîå äèÇÆÍ ÇäÏñäÇÆä ÐÇÊ ÇäÃ×èÇä ÇäåïÊÚêñðÑîÉ áâ× åæ âÈä 
    PHP 4 èåÇ êäêçÇ» ÇÓÊÙÑÖ <link
    linkend="functions.variable-arg-list">äèÇÆÍ ÇäÏñäÇÆä ÐÇÊ ÇäÃ×èÇä ÇäåïÊÚêñðÑîÉ &#8220;Variable-length argument
    lists&#8221;</link> èÅÍÇäÇÊ ÇäÏñèÇäê ÇäÎÇÕÉ Èà
    <function>func_num_args</function>¬
    <function>func_get_arg</function> è
    <function>func_get_args</function> äåÒêÏ åæ ÇäåÙäèåÇÊ. 
    êåãæ ÅæÌÇÒ ÊÇËêÑ ååÇËä áê PHP 3 åæ ÎäÇä ÊåÑêÑ åÕáèáÉ ÏäÇÆä 
    Åäé ÏÇäÉ: 
   </para>
   <para>
    <example>
     <title>ÊåÑêÑ åÕáèáÇÊ Åäé ÏèÇä</title>
     <programlisting role="php">
<![CDATA[
<?php
function takes_array($input)
{
    echo "$input[0] + $input[1] = ", $input[0]+$input[1];
}
?>
]]>
     </programlisting>
    </example>
   </para>
 
   <sect2 id="functions.arguments.by-reference">
    <title>ÌÙä ÇäÏñäÇÆä åïåîÑñîÑîÉ ÈÇäÅÍÇäÉ</title>
 
    <simpara>
     ÅáÊÑÇÖêÇë¬ êÊå ÊåÑêÑ ÏäÇÆä ÇäÏñèÇä åæ ÎäÇä ÇäâêåÉ (ÈÍêË Ãæñç ÅÐÇ 
     ÚîêñîÑòÊî âêåÉ ÇäÏñäêä Öåæ ÇäÏñÇäɬ áÅæñçÇ 
     äÇ ÊÊÚêñîÑ ÎÇÑÌ ÇäÏñÇäÉ). ÅÐÇ ÑÚÈÊ áê ÇäÓñåÇÍ 
     äÏÇäÉ ÈÊÙÏêä ÏäÇÆäçǬ áÅæñç êÊèÌÈ Ùäêã ÊåÑêÑçÇ 
     ÈÇäÅÍÇäÉ. 
    </simpara>
    <para>
     ÅÐÇ ÑÚÈÊ åæ Ïäêä &#8220;argument&#8221; Ãæ êïåÑñîÑ ÏÇÆåÇ Åäé ÏÇäÉ 
     ÈÇäÅÍÇäɬ áêåãæã ÇÓÊçäÇä ÇÓå ÇäÏñäêä ÈÍÑá (&amp;) 
     èÐäã áê ÊÙÑêá ÇäÏñÇäÉ: 
    </para>
    <para>
     <example>
      <title>ÊåÑêÑ åîÙòäîåÇÊ ÇäÏñèÇä &#8220;function parameter&#8221; ÈÇäÅÍÇäÉ</title>
      <programlisting role="php">
<![CDATA[
<?php
function add_some_extra(&$string)
{
    $string .= 'èãÐÇ ÔêÁ ÅÖÇáê.';
}
$str = 'çÐç ÓäÓäɬ ';
add_some_extra($str);
echo $str;    // êÓÊÕÏÑ 'çÐç ÓäÓäɬ èãÐÇ ÔêÁ ÅÖÇáê.'
?>
]]>
      </programlisting>
     </example>
    </para>
 
   </sect2>
 
   <sect2 id="functions.arguments.default">
    <title>âêå ÇäÏñäÇÆä ÇäÇáÊÑÇÖêñÉ</title>
 
    <para>
     êåãæ äÏÇäÉ Ãæ ÊïÙÑñðáî Çäâêå ÇäÇáÊÑÇÖêñÉ ääÏäÇÆä 
     ÇäÃÍÇÏêñÉ ÇäâêåÉ Ùäé ÔÇãäÉ ÃÓäèÈ C++ ãÇäÂÊê: 
    </para>
    <para>
     <example>
      <title>ÅÓÊÎÏÇå ÇäåîÙòäîåîÇÊ ÇäÇáÊÑÇÖêñÉ áê ÇäÏñèÇä</title>
      <programlisting role="php">
<![CDATA[
<?php
function makecoffee ($type = "âçèÉ")
{
    return "ÊÍÖêÑ áæÌÇæ $type.\n";
}
echo makecoffee ();
echo makecoffee ("ÔÇê");
?>
]]>
      </programlisting>
     </example>
    </para>
 
    <para>
     êÊåËä ÇäåïÎÑîÌ ÇäÕñÇÏðÑ Ùæ ÇäåïâÊ×îá ÇäÓñÇÈâ áê: 
    </para>
    <para>
     <screen>
ÊÍÖêÑ áæÌÇæ âçèÉ.
ÊÍÖêÑ áæÌÇæ ÔÇê. 
     </screen>
    </para>
 
    <simpara>
     êÌÈ Ãæ Êãèæ ÇäâêåÉ ÇäÇáÊÑÇÖêñÉ ÙÈÇÑÉë ËÇÈÊÉë èäêÓ (Ùäé ÓÈêä 
     ÇäåËÇä) åïÊÚêñÑÇë¬ ÙÖèÇ áê Õæá Ãè æÏÇÁ ÏÇäÉ. 
    </simpara>
    <para>
     äÇÍØ Ãæñç ÙæÏ ÇÓÊÎÏÇå ÇäÏñäÇÆä ÇäÇáÊÑÇÖêñɬ áÅæñ ÃêñÉ ÇáÊÑÇÖÇÊ êÌÈ Ãæ Êãèæ Ùäé 
     ÇäÌçÉ Çäêïåæé äÃêñÉ ÏäÇÆä ÚêÑ ÇáÊÑÇÖêñÉ èÅäÇ áÅæñ ÇäÃåèÑ 
     äæ ÊÓêÑ åËäåÇ çè åïÊèâñîÙ. ÎÐ ÈÙêæ ÇäÇÙÊÈÇÑ åïâÊ×îá ÇäÔñðêáÑÉ ÇäÊñÇäêñ: 
    </para>
    <para>
     <example>
      <title>ÇÓÊÎÏÇå ÚêÑ ÕÍêÍ äÏäÇÆä ÇäÏñèÇä ÇäÇáÊÑÇÖêñÉ</title>
      <programlisting role="php">
<![CDATA[
<?php
function makeyogurt ($type = "acidophilus", $flavour)
{
    return "ÊÍÖêÑ ãèÈ åæ $type $flavour.\n";
}
 
echo makeyogurt ("ÇäÊñïèÊ ÇäÔñèãêñ");   // äæ êÙåä åËäåÇ çè åïÊèâñîÙ
?>
]]>
      </programlisting>
     </example>
    </para>
 
    <para>
     êÊåËä åïÎÑîÌ ÇäåËÇä ÇäÓñÇÈâ áê: 
    </para>
    <para>
     <screen>
Warning (ÊÍÐêÑ): Missing argument 2 in call to makeyogurt() in 
/usr/local/etc/httpd/htdocs/php3test/functest.html on line 41
ÊÍÖêÑ ãèÈ åæ ÇäÊñïèÊ ÇäÔñèãêñ.
     </screen>
    </para>
    <para>
     ÇäÂæ¬ âÇÑæ åÇ ÓÈâ ÈçÐÇ: 
    </para>
    <para>
     <example>
      <title>ÇÓÊÎÏÇå ÕÍêÍ äÏäÇÆä ÇäÏñèÇä ÇäÇáÊÑÇÖêñÉ</title>
      <programlisting role="php">
<![CDATA[
<?php
function makeyogurt ($flavour, $type = "acidophilus")
{
    return "ÊÍÖêÑ ãèÈ åæ $type $flavour.\n";
}
 
echo makeyogurt ("ÇäÊñïèÊ ÇäÔñèãêñ");   // êÙåä åËäåÇ çè åïÊèâñîÙ
?>
]]>
      </programlisting>
     </example>
    </para>
 
    <para>
     êÊåËä åïÎÑîÌ çÐÇ ÇäåËÇä áê: 
    </para>
    <para>
     <screen>
ÊÍÖêÑ ãèÈ åæ acidophilus ÇäÊñïèÊ ÇäÔñèãêñ.
     </screen>
    </para>

   </sect2>

   <sect2 id="functions.variable-arg-list">
    <title>äèÇÆÍ ÇäÏñäÇÆä ÐÇÊ ÇäÃ×èÇä ÇäåïÊÚêñðÑÉ &#8220;Variable-length argument lists&#8221;</title>
	
    <simpara>
     ÊÊèáÑ PHP 4 Ùäé ÏÙå äèÇÆÍ ÇäÏñäÇÆä ÐÇÊ ÇäÃ×èÇä ÇäåïÊÚêñðÑÉ áê 
     ÇäÏñèÇä ÇäåïÙÑñîáÉ åæ âÈä ÇäåïÓÊÎÏðå. Íâêâɬ ÇäÃåÑ ÈÓê× ÊåÇåÇ ÈÇÓÊÎÏÇå ÏèÇä 
     <function>func_num_args</function>¬
     <function>func_get_arg</function> è 
     <function>func_get_args</function>.
    </simpara>

    <simpara>
     äêÓÊ çæÇã ÕêÇÚÉ åïÍÏñîÏÉ å×äèÈÉ ãåÇ êåãæ Ãæ êïÒèñîϬ èÈÔãä ÕÑêͬ ÈäèÇÆÍ ÇäÏñäÇÆä 
     åÙ ÊÙÑêáÇÊ ÇäÏñèÇä èÓÊÊÕÑá 
     ÈÔãä ÙÇÏêñ.
    </simpara>

   </sect2>

  </sect1>
 
  <sect1 id="functions.returning-values">
   <title>ÅÑÌÇÙ âêå</title>
 
   <para>
    êÊå ÅÑÌÇÙ Çäâêå ÈÇÓÊÎÏÇå ÈäÇÚ return ÇäÇÎÊêÇÑêñ. êåãæ 
    ÅÑÌÇÙ Ãêñ æèÙ¬ ÈåÇ áê Ðäã ÇääñèÇÆÍ èÇäãÇÆæÇÊ. êÄÏê çÐÇ 
    ÈÇäÏñÇäÉ Åäé ÅæçÇÁ ÊæáêÐçÇ ÍÇäÇë èÅÑÌÇÙ ÇäÊñÍãñïå Åäé 
    ÇäÓñ×Ñ ÇäÐñê ÊåÊ åæÇÏÇÊçÇ åæç. ÇÓÊÙÑÖ <function>return</function>
    äåÒêÏ åæ ÇäåÙäèåÇÊ. 
   </para>
   <para>
    <example>
     <title>ÅÓÊÎÏÇå <function>return</function></title>
     <programlisting role="php">
<![CDATA[
<?php
function square ($num)
{
    return $num * $num;
}
echo square (4);   // êÓÊÕÏÑ '16'.
?>
]]>
     </programlisting>
    </example>
   </para>
      
   <para>
    äêÓ ÈÅåãÇæã ÅÑÌÇÙ âêå ÙÏêÏÉ Åæ×äÇâÇ åæ ÏÇäÉ äãæ êåãæ ÇäÍÕèä 
    Ùäé æÊÇÆÌ åïåÇËðäÉ åæ ÎäÇä ÅÑÌÇÙ äÇÆÍÉ. 
   </para>
   <para>
    <example>
     <title>ÇÑÌÇÙ åÕáèáÉ ääÍÕèä Ùäé âêå åïÊÙÏñðÏÉ</title>
     <programlisting role="php">
<![CDATA[
<?php
function small_numbers()
{
    return array (0, 1, 2);
}
list ($zero, $one, $two) = small_numbers();
?>
]]>
     </programlisting>
    </example>
   </para>
   <para>
    äÇÑÌÇÙ ÅÍÇäÉ Çæ×äÇâÇ åæ ÏÇäɬ Ùäêã Ãæ ÊÓÊÎÏå 
    åÙÇåä ÇäÅÍÇäÉ &#8220;reference operator&#8221; &amp; ÓèÇÁ áê ãäñ åæ ÊÕÑêÍ ÇäÏñÇäÉ &#8220;function declaration&#8221; èÙæÏ 
    ÊÙêêæ âêåÉ ÇäÇÑÌÇÙ äÏé åïÊÚêñðÑ åÇ: 
   </para>
   <para>

    <example>
     <title>ÇÑÌÇÙ ÅÍÇäÉ Çæ×äÇâÇ åæ ÏÇäÉ</title>
     <programlisting role="php">
<![CDATA[
<?php
function &returns_reference()
{
    return $someref;
}

$newref =& returns_reference();
?>
]]>
     </programlisting>
    </example>
   </para>
   <simpara>
    äåÒêÏ åæ ÇäåÙäèåÇÊ ÈÎÕèÕ ÇäÅÍÇäÇʬ ÑÌÇÁë ÊáâñîÏ <link
    linkend="language.references">ÔÑÍ ÇäÅÍÇäÇÊ</link>.
   </simpara>
  </sect1>
 
  <sect1 id="functions.variable-functions">
   <title>ÏèÇä ÇäåñÊÚêñðÑÇÊ &#8220;Variable functions&#8221;</title>

   <para>
    ÊÏÙå PHP åáçèå ÏèÇä ÇäåïÊÚêñðÑÇÊ. êÙæê çÐÇ Ãæñç ÅÐÇ 
    Êåñ ÅäÍÇâ ÅÓå åïÊÚêñðÑ ÈâèÓêæ¬ áÅæñ PHP ÓÊÈÍË Ùæ 
    ÏÇäÉ ÊÍåä æáÓ ÇäÅÓå åËäåÇ ÊïÔêÑ Åäêç âêåÉ ÇäåïÊÚêñðÑ 
    èÓÊÍÇèä ÊæáêÐçÇ. åæ Èêæ ÃÔêÇÁ ÃÎÑé¬ êåãæ äçÐÇ Ãæ 
    Ãæ êïÓÊÎòÏîå äÅÏÑÇÌ æÏÇÁÇÊ ÊÐãêÑêñÉ &#8220;callbacks&#8221;¬ ÌÏÇèä ÏèÇä &#8220;function tables&#8221; èçãÐÇ ÏèÇäêã. .
   </para>
   <para>
    äæ ÊÙåä ÏèÇä ÇäåñÊÚêñðÑÇÊ åÙ ÈæÇÁÇÊ ÇääñïÚÉ &#8220;language constructs&#8221; åËä 
    <function>echo</function>¬ <function>print</function>¬
    <function>unset</function>¬ <function>isset</function>¬
    <function>empty</function>¬ <function>include</function>¬
    <function>require</function> èåÇ ÔÇÈç. ÊÍÊÇÌ äÇÓÊÎÏÇå 
    ÇäÏñÇäÉ ÇäÊñÚäêáêñîÉ &#8220;wrapper function&#8221; ÇäÎÇÕÉ Èã ÈÚÑÖ ÇÓÊÙåÇä Ãêñ åæ çÐç ÇäÈæÇÁÇÊ 
    Ùäé ÃæñçÇ ÏèÇä åïÊÚêñðÑÇÊ.
   </para>
   <para>
    <example>
     <title>åËÇä Ùæ ÏÇäÉ åïÊÚêñðÑ</title>
     <programlisting role="php">
<![CDATA[
<?php
function foo() {
    echo "áê foo()<br />\n";
}

function bar($arg = '')
{
    echo "áê bar(); ÇäåîÙòäîåîÉ ãÇæÊ '$arg'.<br />\n";
}

// çÐç ÏÇäÉ ÊÚäêáêñÉ &#8220;wrapper function&#8221; ÊïÍê× Èàecho
function echoit($string)
{
    echo $string;
}

$func = 'foo';
$func();        // äåæÇÏÇÉ foo()

$func = 'bar';
$func('test');  // äåæÇÏÇÉ bar()

$func = 'echoit';
$func('test');  // äåæÇÏÇÉ echoit()
?>
]]>
     </programlisting>
    </example>
   </para>
   <para>
    êåãæã ÃêÖÇ åæÇÏÇÉ åæçÌ ãÇÆæêñ &#8220;object's method&#8221; ÈÇÓÊÎÏÇå åêÒÉ 
    ÏèÇä ÇäåïÊÚêñðÑÇÊ &#8220;variable functions&#8221;.
    <example>
     <title>åËÇä Ùæ åæçÌ ÇäåïÊÚêñðÑÇÊ &#8220;Variable method&#8221;</title>
     <programlisting role="php">
<![CDATA[
<?php
class Foo
{
    function Variable()
    {
        $name = 'Bar';
        $this->$name(); // äåæÇÏÇÉ åæçÌ Bar()
    }
    
    function Bar()
    {
        echo "This is Bar";
    }
}

$foo = new Foo();
$funcname = "Variable";
$foo->$funcname();  // äåæÇÏÇÉ $foo->Variable()

?>
]]>
     </programlisting>
    </example>
   </para>
   <para>
    ÇÓÊÙÑÖ ÃêÖÇ <function>call_user_func</function>¬
    <link linkend="language.variables.variable">
    ÇäåïÊÚêñðÑÇÊ ÇäåïÊÚêñðÑÉ &#8220;variable variables&#8221;</link> è <function>function_exists</function>.
   </para>
  </sect1>
  
  <sect1 id="functions.internal">
   <title>ÏèÇä ÏÇÎäêñÉ &#8220;Internal functions&#8221; (åïÊÖñîåæÉ ÙæÏ ÇäÊñÔêêÏ - built-in)</title>
   
   <para>
    ÊÃÊê PHP¬ ÈÕèÑÉ åâêÇÓêñɬ åïÑáîâîÉë ÈÙÏÉ ÏèÇä èÈæÇÁÇÊ. çæÇã ÃêÖÇ 
    ÏèÇä ÊÓÊäÒå èÌèÏ ÊèÓÙÇÊ PHP ÎÇÕÉ åïÊÖåñîæÉ ÙæÏ ÇäÊñÌåêÙ èÅäÇ 
    áÓÊÍÕä Ùäé ÃÎ×ÇÁ "ÏÇäÉ ÚêÑ åïÙÑñîáÉ - undefined function" ÇäáÇÏÍÉ. Ùäé ÓÈêä ÇäåËÇä¬ äÇÓÊÎÏÇå 
    ÏèÇä <link linkend="ref.image">image</link> åËä 
    <function>imagecreatetruecolor</function>¬ ÓÊÍÊÇÌ äÊÌåêÙ PHP äÏêã 
    åÙ ÏÙå <productname>GD</productname>. èäÇÓÊÎÏÇå <function>mysql_connect</function>¬ 
    ÓÊÍÊÇÌ äÊÌåêÙ PHP äÏêã ÈÏÙå <link linkend="ref.mysql">MySQL</link>
    . çæÇÏ ÇäÙÏêÏ åæ ÏèÇä ÇäæñèÇÉ &#8220;core functions&#8221; ÇäÊñê ÊÊèÇÌÏ åïÊÖåñîæÉ áê ãäñ 
    ÅÕÏÇÑÉ åæ PHP åËä ÏèÇä <link linkend="ref.strings">string</link> and 
    <link linkend="ref.var">variable</link>. åæÇÏÇÉ 
    <function>phpinfo</function> Ãè 
    <function>get_loaded_extensions</function> ÓêïØçðÑ ÃêñÉ 
    ÊèÓÙÇÊ ÊåÊ ÊÙÈÆÊçÇ Öåæ PHP. ãÐä㬠äÇÍØ Ãæñ ÙÏÉ ÊèÓÙÇÊ 
    êÊå ÊáÙêäçÇ ÈÕèÑÉ ÇáÊÑÇÖêñÉ èÈÃæñ Ïäêä PHP åïâÓñîå ÈÍÓÈ ÇäÊèñÓñÙÇÊ. 
    ÇÓÊÙÑÖ áÕèä <link linkend="configuration">ÇäÊñçêÆÉ</link>¬ 
    <link linkend="installation">ÇäÊñËÈêÊ</link> èÇäåïÊÙäñðâÉ Èãäñ 
    ÊèÓÙÉ Ùäé ÍÏé¬ äÃÌä ÇäÍÕèä Ùäé åÒêÏí åæ ÇäåÙäèåÇÊ ÈÎÕèÕ ×ÑêâÉ ÊæÕêÈ PHP äÏêã.
   </para>
   <para>
    âÑÇÁÉ èáçå ÇäæñåèÐÌ ÇäÃèäêñ äÏÇäÉ &#8220;function's prototype&#8221; åÇ åÔÑèÍÉ Öåæ 
    áÕä ÇäÏñäêä ÇäåïÙæèîæ Èà
    <link linkend="about.prototypes">ãêáêÉ âÑÇÁÉ ÊÙÑêá ÏÇäÉ</link>.
    åæ ÇäÃçåêÉ ÈåãÇæ ÅÏÑÇã åÇ Êâèå ÏÇäÉ åÇ ÈÅÑÌÇÙç Ãè ÅÐÇ ãÇæÊ ÏÇäÉ åÇ ÊÙåä 
    åÈÇÔÑÉ Ùäé âêåÉ åïåÑñîÑÉ Åäé åÖåèæçÇ. Ùäé ÓÈêä ÇäåËÇä¬ 
    <function>str_replace</function> ÓÊâèå ÈÅÑÌÇÙ ÇäÓñäÓäÉ ÇäåïÙÏñîäÉ áê Íêæ Ãæñ 
    <function>usort</function> ÊÙåä Ùäé ÇäåïÊÚêñðÑ ÇäÍÇäêñ¬ ÇäåïåÑñîÑ 
    Åäé åÖåèæ ÇäåïÊÚêñðÑ æáÓç. ãäñ ÕáÍÉ åæ ÇäÏñäêä ÊÊÖåæ ÃêÖÇ åÙäèåÇÊ ÎÇÕÉ Èãäñ 
    ÏÇäɬ åËäÇ åÙäèåÇÊ ÈÎÕèÕ åîÙòäîåÇÊ ÇäÏñèÇä &#8220;function parameters&#8221;¬ ÊÚêñïÑÇÊ ÇäÓñäèã &#8220;behavior changes&#8221;¬ 
    âêå ÇäÅÑÌÇÙ äãäñ åæ åÙäèåÇÊ ÇäæñÌÇͬ ÇäáÔä èÇäÊñèáñïÑ. 
    Åæñ åÙÑáÉ çÐç ÇäÇÎÊäÇáÇÊ ÇäåïçñðåÉ (ÇäÊñê äÇ ÒÇäÊ ÚÇäÈÇ åïÊæãñðÑÉ) çè ÃåÑ ÍÇÓå 
    äãÊÇÈÉ ÔêáÑÉ PHP ÕÍêÍÉ.
   </para>
   <para>
    ÇÓÊÙÑÖ ÃêÖÇ <function>function_exists</function>¬ 
    <link linkend="funcref">the function reference</link>¬
    <function>get_extension_funcs</function> è 
    <function>dl</function>.
   </para>
  </sect1>

 </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:"../../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
-->