svn: /phpdoc/sr/trunk/language/ constants.xml
[email protected] (Nikola Smolenski) Wed, 15 Jun 2011 16:47:46 +0000
| Newsgroups | php.doc.sr |
|---|---|
| Message-ID | <[email protected]> |
nikola Wed, 15 Jun 2011 16:47:46 +0000
Revision: http://svn.php.net/viewvc?view=revision&revision=312193
Log:
New translation
Changed paths:
A phpdoc/sr/trunk/language/constants.xml
svn-diffs-312193.txt
(text/x-diff, 14 KB)
Added: phpdoc/sr/trunk/language/constants.xml
===================================================================
--- phpdoc/sr/trunk/language/constants.xml (rev 0)
+++ phpdoc/sr/trunk/language/constants.xml 2011-06-15 16:47:46 UTC (rev 312193)
@@ -0,0 +1,306 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- $Revision$ -->
+<!-- EN-Revision: 297028 Maintainer: nikola Status: ready -->
+ <chapter xml:id="language.constants" xmlns="http://docbook.org/ns/docbook">
+ <title>Константе</title>
+
+ <simpara>
+ Константа је идентификатор (име) за једноставну вредност. Као што им име
+ каже, та вредност не може бити промењена током извршења
+ скрипте (осим за <link linkend="language.constants.predefined">
+ чаробне константе</link>, које нису стварно константе).
+ Подразумевајуће је да име константе разликује велика и мала слова. По договору, имена
+ константи се увек пишу великим словима.
+ </simpara>
+ <para>
+ Име константе прати иста правила као било која ознака у ПХП-у.
+ Исправно име константе почиње словом или подвлаком, праћеним
+ било којим бројем слова, бројева, или подвлака. Као регуларни
+ израз, то би било изражено овако:
+ <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
+
+// Исправна имена константи
+define("BLA", "нешто");
+define("BLA2", "нешто друго");
+define("BLA_TRUC", "нешто више");
+
+// Неисправна имена константи
+define("2BLA", "нешто");
+
+// Ово је исправно, али треба га избегавати:
+// ПХП ће можда једног дана обезбедити чаробну константу
+// због које ће вам пући скрипта
+define("__BLA__", "нешто");
+
+?>
+]]>
+ </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> или коришћењем
+ <literal>const</literal> кључне речи изван дефиниције класе од
+ ПХП-а 5.3.0. Једном кад је константа дефинисана, она никад не може бити
+ промењена или оддефинисана.
+ </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>
+ Ако користите недефинисану константу, ПХП претпоставља да мислите
+ са̂мо име константе, баш као да сте га позвали као
+ <type>string</type> (KONSTANTA наспрам "KONSTANTA"). Грешка нивоа
+ <link linkend="ref.errorfunc">E_NOTICE</link> биће избачена
+ кад се ово деси. Видите још и унос у приручнику о томе зашто је
+ <link linkend="language.types.array.foo-bar">$bla[truc]</link>
+ погрешно (осим ако прво не <function>define</function>-ишете
+ <literal>truc</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("KONSTANTA", "Здраво свете.");
+echo KONSTANTA; // исписује "Здраво свете."
+echo Konstanta; // исписује "Konstanta" и избацује напомену.
+?>
+]]>
+ </programlisting>
+ </example>
+ </para>
+
+ <para>
+ <example>
+ <title>Дефинисање константи коришћењем <literal>const</literal> кључне речи</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+// Ради од ПХП-а 5.3.0
+const KONSTANTA = 'Здраво свете';
+
+echo KONSTANTA;
+?>
+]]>
+ </programlisting>
+ </example>
+ </para>
+
+ <note>
+ <para>
+ За разлику од дефинисања константи коришћењем <function>define</function>,
+ константе дефинисане коришћењем <literal>const</literal> кључне речи морају бити
+ декларисане у опсегу највишег нивоа јер се дефинишу у времену компајлирања.
+ То значи да не могу бити декларисане унутар функција, петљи или
+ <literal>if</literal> исказа.
+ </para>
+ </note>
+
+ <simpara>
+ Видите још <link linkend="language.oop5.constants">Константе класа</link>.
+ </simpara>
+ </sect1>
+
+ <sect1 xml:id="language.constants.predefined">
+ <title>Чаробне константе</title>
+
+ <simpara>
+ ПХП обезбеђује велики број <link
+ linkend="reserved.constants">предефинисаних константи</link> свакој скрипти
+ коју тера. Многе од ових константи, пак, праве
+ разна проширења, и биће присутне само кад су та проширења
+ доступна, било учитавањем при извршавању или јер су
+ укомпајлирана.
+ </simpara>
+
+ <para>
+ Постоји неколико чаробних константи које се мењају у зависности од тога
+ где се користе. На пример, вредност
+ <constant>__LINE__</constant> (срп. ред, линија) зависи од реда који се
+ користи у вашој скрипти. Ове посебне константе не
+ разликују мала и велика слова и оне су:
+ </para>
+ <para>
+ <table>
+ <title>Чаробне ПХП константе</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-а,
+ враћа се име укљученог фајла.
+ Од ПХП-а 4.0.2, <constant>__FILE__</constant> увек садржи
+ апсолутну путању са разрешеним симболичким линковима док је у старијим верзијама могла да садржи релативну путању
+ под неким околностима.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>__DIR__</constant></entry>
+ <entry>
+ Директоријум фајла. Ако се користи унутар include-а,
+ враћа се директоријум укљученог фајла. Ово је истоврсно
+ коришћењу <literal>dirname(__FILE__)</literal>. Ово име директоријума
+ нема косу црту на крају осим ако је коренски директоријум.
+ (Додато у ПХП-у 5.3.0.)
+ </entry>
+ </row>
+ <row>
+ <entry><constant>__FUNCTION__</constant></entry>
+ <entry>
+ Име функције. (Додато у ПХП-у 4.3.0.) As of PHP 5 this constant
+ returns the function name as it was declared (case-sensitive). У
+ ПХП-у 4 његова вредност је увек дата малим словима.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>__CLASS__</constant></entry>
+ <entry>
+ Име класе. (Додато у ПХП-у 4.3.0.) Од ПХП-а 5 ова константа
+ враћа име класе као што је декларисано (разликује мала и велика слова). У ПХП-у
+ 4 његова вредност је увек дата малим словима.
+ </entry>
+ </row>
+ <row>
+ <entry><constant>__METHOD__</constant></entry>
+ <entry>
+ Име метода класе. (Додато у ПХП-у 5.0.0.) Име метода се
+ враћа како је декларисано (разликује велика и мала слова).
+ </entry>
+ </row>
+ <row>
+ <entry><constant>__NAMESPACE__</constant></entry>
+ <entry>
+ Име тренутног именског простора (разликује велика и мала слова). Ова константа
+ је дефинисана у времену компајлирања (додато у ПХП-у 5.0.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:"~/.phpdoc/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
+-->
Property changes on: phpdoc/sr/trunk/language/constants.xml
___________________________________________________________________
Added: svn:keywords
+ Revision