LMPX.COM |
Home | Linux | Mysql | PHP | XML | ||
|
|
|||
From: Pedram Salehpoor Date: Tue Jun 24 11:27:02 2008 Subject: cvs: phpdoc-fa /language constants.xml
psalehpoor Tue Jun 24 17:27:02 2008 UTC
Added files:
/phpdoc-fa/language constants.xml
Log:
translation to persian
http://cvs.php.net/viewvc.cgi/phpdoc-fa/language/constants.xml?view=markup&rev=1.1
Index: phpdoc-fa/language/constants.xml
+++ phpdoc-fa/language/constants.xml
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: 1.52 Maintainer: pedram Status: ready -->
<!-- $Revision: 1.1 $ -->
<chapter xml:id="language.constants" xmlns="http://docbook.org/ns/docbook">
<title>ثابتها</title>
<simpara>
یک ثابت یک توصیفکننده (نام) برای یک مقدار است.
همانطور که از نام آن مشخص است مقدار آن در طول اجرای اسکریپت تغییر نمییابد
(به جز <link linkend="language.constants.predefined">
ثابتهای جادویی</link> که در واقع ثابت نیستند).
یک ثابت بصورت پیشفرض حساس به حروف بزرگ و کوچک است.
بطور معمول توصیف کنندههای ثابت با حروف بزرگ نوشته میشود.
</simpara>
<para>
نام یک ثابت همان قوانین برچسبها را در PHP دنبال مینماید.
یک نام صحیح ثابت با یک حرف یا _ شروع شده و در ادامه حروف اعداد یا _
میتواند به هر تعداد قرار گیرد. اگر بخواهیم آن را بصورت یک عبارت منظم نمایش دهیم:
<literal>[a-zA-Z_\x7f-\xff][a-zA-Z0-9_\x7f-\xff]*</literal>
</para>
&tip.userlandnaming;
<para>
<example>
<title>نامهای ثابت صحیح و غیرصحیح</title>
<programlisting role="php">
<![CDATA[
<?php
// Valid constant names
define("FOO", "something");
define("FOO2", "something else");
define("FOO_BAR", "something more");
// Invalid constant names
define("2FOO", "something");
// This is valid, but should be avoided:
// PHP may one day provide a magical constant
// that will break your script
define("__FOO__", "something");
?>
]]>
</programlisting>
</example>
</para>
<note>
<simpara>
برای اهداف ما در اینجا یک حرف a-z A-Z است و کاراکترهای ASCII از 127 تا 255 (0x7f-0xff).هستند
</simpara>
</note>
<simpara>
مانند &link.superglobals; حوزه یک ثابت جهانی است. شما میتوانید به ثابتها در هر جای اسکریپت شما بدون توجه
به حوزه قابل دسترسی است. برای اطلاعات بیشتر درباره حوزه به بخش راهنما
<link linkend="language.variables.scope">حوزه متغیر</link> مراجعه کنید.
</simpara>
<sect1 xml:id="language.constants.syntax">
<title>دستور</title>
<simpara>
شما میتوانید یک ثابت را با استفاده از تابع
<function>define</function>تعریف نمایید. وقتی یک ثابت تعریف شد نمیتوان آن را تغییر داد و یا از تعریف
خارج کرد.
</simpara>
<simpara>
تنها داده خطی (<type>boolean</type> <type>integer</type>
<type>float</type> و <type>string</type>) میتواند در ثابتها وارد شوند.
ثابتهای <type>resource</type> را تعریف ننمایید.
</simpara>
<simpara>
شما میتوانید مقدار یک ثابت را با مشخص نمودن نام آن دسترسی داشته باشیم.
برخلاف متغیرها شما باید <emphasis>نباید</emphasis>
<literal>$</literal> به یک ثابت اضافه نمایید.
شما میتوانید از تابع <function>constant</function> برای خواندن مقدار ثابت اگر بخواهید نام ثابت را بصورت پویا دسترسی داشته باشیم.
<function>get_defined_constants</function> برای دریافت یک فهرست از ثابتها استفاده نمایید.
</simpara>
<note>
<simpara>
ثابتها و متغیرها (جهانی) در فضای نام متفاوت هستند.
این مورد برای نمونه &true; و
<varname>$TRUE</varname> ذرهای متفاوت هستند.
</simpara>
</note>
<simpara>
اگر از ثابت تعیین نشده استفاده کنید PHP نام ثابت را خود تعیین مینماید مانند این که به آن بگوییم
یک <type>string</type> (CONSTANT برخلاف "CONSTANT"). یک خطای سطح
<link linkend="ref.errorfunc">E_NOTICE</link> در این موقعیت ایجاد خواهد گردید. همچنین ورودی راهنما در
مورد اشتباه بودن
<link linkend="language.types.array.foo-bar">$foo[bar]</link>
ببینید (مگر شما ابتدا <function>define</function>
<literal>bar</literal> را یک ثابت اعلام نمایید). اگر بخواهید بررسی نمایید آیا ثابت تعیین
شده است از تابع <function>defined</function> استفاده کنید.
</simpara>
<para>
تفاوتهایی میان ثابتها و متغیها وجود دارد:
<itemizedlist>
<listitem>
<simpara>
ثابتها علامت (<literal>$</literal>) را پیش از خود ندارند.
</simpara>
</listitem>
<listitem>
<simpara>
ثابتها تنها از طریق تابع
<function>define</function> و نه با انتصاب معمولی تعریف میشوند.
</simpara>
</listitem>
<listitem>
<simpara>
ثابتها ممکن است تعریف شده باشند و از هر نقطه بدون توجه به قوانین حوزه دسترسی به آنها دسترسی
خواهد داشت.
</simpara>
</listitem>
<listitem>
<simpara>
ثابتها دوباره تعریف نمیشوند و یا نمیتوان آنها را از تعریف خارج کرد اگر تعریف شوند. و
</simpara>
</listitem>
<listitem>
<simpara>
ثابتها ممکن است به مقدار خطی ارزیابی گردند.
</simpara>
</listitem>
</itemizedlist>
</para>
<para>
<example>
<title>تعریف ثابت</title>
<programlisting role="php">
<![CDATA[
<?php
define("CONSTANT", "Hello world.");
echo CONSTANT; // outputs "Hello world."
echo Constant; // outputs "Constant" and issues a notice.
?>
]]>
</programlisting>
</example>
</para>
<simpara>
See also <link linkend="language.oop5.constants">Class Constants</link>.
</simpara>
</sect1>
<sect1 xml:id="language.constants.predefined">
<title>ثابتهای جادویی</title>
<simpara>
PHP تعداد زیادی <link
linkend="reserved.constants">ثابتهای از پیش تعریف شده</link> تعریف نموده است تا به هر اسکریپت در
حال اجرا اضافه نماید. بیشتر این ثابتها به هرحال توسط ضمیمههای مختلف تعریف شدهاند و تنها در آن ضمیمهها
حاضر خواهند بود که یا بصورت دینامیک یا کامپایل شده در برنامه شما حضور دارد.
</simpara>
<para>
هفت ثابت جادویی وجود دارند که براساس تغییرات محل استفاده آنها تعیین میگردد.
برای نمونه مقدار
<constant>__LINE__</constant> بر خط استفاده شده در اسکریپت شما بستگی دارد. این ثابتهای ویژه غیرحساس به حروف
بزرگ و کوچک است و بصورت زیر است:
</para>
<para>
<table>
<title>چند ثابت جادویی در PHP</title>
<tgroup cols="2">
<thead>
<row>
<entry>نام</entry>
<entry>توضیح</entry>
</row>
</thead>
<tbody>
<row>
<entry><constant>__LINE__</constant></entry>
<entry>
شماره خط فعلی.
</entry>
</row>
<row>
<entry><constant>__FILE__</constant></entry>
<entry>
مسیر کامل و نام فایل. اگر در داخل include استفاده شود نام فایل اضافه شده بازگردانده میشود.
از رمان PHP 4.0.2 <constant>__FILE__</constant> همیشه مسیر مطلق با symlink رفع شده
است در نسخههای قدیمیتر مسیر نسبی در آن موجود بوده است.
</entry>
</row>
<row>
<entry><constant>__DIR__</constant></entry>
<entry>
دایرکتوری فایل. اگر در داخل include استفاده شود دایرکتوری فایل اضافه شده را باز میگرداند.
این ثابت معادل <literal>dirname(__FILE__)</literal> است. نام دایرکتوری / در پایان خود ندارد تا زمانی که دایرکتوری
ریشه باشد. (اضافه شده در PHP 5.3.0)
</entry>
</row>
<row>
<entry><constant>__FUNCTION__</constant></entry>
<entry>
نام تابع. (اضافه شده در PHP 4.3.0) از زمان PHP 5 این ثابت نام تابع را بصورت تعریف شده بازگردانده میشود
(حساس به حروف بزرگ و کوچک). در PHP 4 مقدار آن حروف کوچک است.
</entry>
</row>
<row>
<entry><constant>__CLASS__</constant></entry>
<entry>
نام کلاس. (اضافه شده در PHP 4.3.0) از زمان PHP 5 این ثابت نام کلاس را بصورت تعریف شده باز میگرداند
(حساس به حروف بزرگ و کوچک) در PHP 4 مقدار آن همیشه با حروف کوچک است.
</entry>
</row>
<row>
<entry><constant>__METHOD__</constant></entry>
<entry>
نام متد کلاس. (اضافه شده در PHP 5.0.0) نام متد همانند زمان تعریف آن بازگردانده میشود (حساس به حروف بزرگ و کوچک).
</entry>
</row>
<row>
<entry><constant>__NAMESPACE__</constant></entry>
<entry>
نام فضای نام فعلی (حساس به حروف بزرگ و کوچگ). این ثابت در زمان کامپایل تعیین میگردد (اضافه شده در PHP 5.3.0).
</entry>
</row>
</tbody>
</tgroup>
</table>
</para>
<para>
همچنین
<function>get_class</function>
<function>get_object_vars</function>
<function>file_exists</function>&listendand;
<function>function_exists</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
-->
| Navigate in group php.doc.fa at sever news.php.net | |
| Previous | Next |
| No Copyright You are free to use Anything |
Site Maintained by PHP Developer
Powered By PHP Consultants |