cvs: phpdoc-si /language expressions.xml
[email protected] ("Dejan Markic") Tue, 03 Sep 2002 13:44:39 -0000
| Newsgroups | php.doc.sl |
|---|---|
| Message-ID | <cvsdejan1031060679@cvsserver> |
dejan Tue Sep 3 09:44:39 2002 EDT
Modified files:
/phpdoc-si/language expressions.xml
Log:
Done.
dejan-20020903094439.txt
(text/plain, 18.5 KB)
Index: phpdoc-si/language/expressions.xml
diff -u phpdoc-si/language/expressions.xml:1.1 phpdoc-si/language/expressions.xml:1.2
--- phpdoc-si/language/expressions.xml:1.1 Mon Sep 2 18:16:58 2002
+++ phpdoc-si/language/expressions.xml Tue Sep 3 09:44:39 2002
@@ -1,31 +1,30 @@
<?xml version="1.0" encoding="iso-8859-1"?>
-<!-- $Revision: 1.1 $ -->
-<!-- $EN-Revision: 1.19 Maintainer: dejan Status: working -->
+<!-- $Revision: 1.2 $ -->
+<!-- $EN-Revision: 1.19 Maintainer: dejan Status: done -->
<chapter id="language.expressions">
- <title>Expressions</title>
+ <title>Izrazi</title>
<simpara>
- Expressions are the most important building stones of PHP. In PHP,
- almost anything you write is an expression. The simplest yet
- most accurate way to define an expression is "anything that has a
- value".</simpara>
+ Izrazi so najpomembnejši del PHP-ja. V PHP-ju je skoraj vse
+ kar napišete izraz. Najenostavnejša, a tudi najbolj točna
+ definicija izraza je: "vse kar ima neko vrednost".</simpara>
<simpara>
- The most basic forms of expressions are constants and variables.
- When you type "$a = 5", you're assigning '5' into $a. '5', obviously,
- has the value 5, or in other words '5' is an expression with the
- value of 5 (in this case, '5' is an integer constant).</simpara>
+ Najbolj osnovne oblike izrazov so konstante in spremenljivke.
+ Ko zapišete "$a = 5", dodeljujete vrednost '5' v spremenljivko
+ $a. '5', očitno, ima vrednost 5, ali v drugih besedah, '5' je
+ izraz z vrednostjo 5 (v tem primeru je '5' številska konstanta).</simpara>
<simpara>
- After this assignment, you'd expect $a's value to be 5 as
- well, so if you wrote $b = $a, you'd expect it to behave just as
- if you wrote $b = 5. In other words, $a is an expression with the
- value of 5 as well. If everything works right, this is exactly
- what will happen.</simpara>
+ Po tej dodelitvi, bi pričakovali, da bo vrednost spremenljivke
+ $a enaka 5. Pravtako, če bi zapisali $b = $a, bi pričakovali,
+ da se bo obnašalo kot če bi zapisali $b = 5. Z drugimi besedami,
+ tudi $a je izraz, ki ima vrednost 5. Če vse deluje pravilno, se
+ bo ravno to zgodilo.</simpara>
<para>
- Slightly more complex examples for expressions are functions. For
- instance, consider the following function:
+ Malenkost bolj zahtevni primer za izraz so funkcije.
+ Kot primer, upoštevajte naslednjo funkcijo:
<informalexample>
<programlisting role="php">
@@ -39,111 +38,108 @@
</informalexample></para>
<simpara>
- Assuming you're familiar with the concept of functions (if you're
- not, take a look at the chapter about functions), you'd assume
- that typing <literal>$c = foo()</literal> is essentially just like
- writing <literal>$c = 5</literal>, and you're right. Functions
- are expressions with the value of their return value. Since foo()
- returns 5, the value of the expression 'foo()' is 5. Usually
- functions don't just return a static value but compute something.</simpara>
-
- <simpara>
- Of course, values in PHP don't have to be integers, and very often
- they aren't. PHP supports three scalar value types: integer values,
- floating point values and string values (scalar values are values that
- you can't 'break' into smaller pieces, unlike arrays, for instance).
- PHP also supports two composite (non-scalar) types: arrays and
- objects. Each of these value types can be assigned into variables or
- returned from functions.</simpara>
-
- <simpara>
- So far, users of PHP/FI 2 shouldn't feel any change. However, PHP
- takes expressions much further, in the same way many other
- languages do. PHP is an expression-oriented language, in the
- sense that almost everything is an expression. Consider the
- example we've already dealt with, '$a = 5'. It's easy to see that
- there are two values involved here, the value of the integer
- constant '5', and the value of $a which is being updated to 5 as
- well. But the truth is that there's one additional value involved
- here, and that's the value of the assignment itself. The
- assignment itself evaluates to the assigned value, in this case 5.
- In practice, it means that '$a = 5', regardless of what it does,
- is an expression with the value 5. Thus, writing something like
- '$b = ($a = 5)' is like writing '$a = 5; $b = 5;' (a semicolon
- marks the end of a statement). Since assignments are parsed in a
- right to left order, you can also write '$b = $a = 5'.</simpara>
-
- <simpara>
- Another good example of expression orientation is pre- and
- post-increment and decrement. Users of PHP/FI 2 and many other
- languages may be familiar with the notation of variable++ and
- variable--. These are increment and decrement operators. In
- PHP/FI 2, the statement '$a++' has no value (is not an
- expression), and thus you can't assign it or use it in any way.
- PHP enhances the increment/decrement capabilities by making
- these expressions as well, like in C. In PHP, like in C, there
- are two types of increment - pre-increment and post-increment.
- Both pre-increment and post-increment essentially increment the
- variable, and the effect on the variable is idential. The
- difference is with the value of the increment expression.
- Pre-increment, which is written '++$variable', evaluates to the
- incremented value (PHP increments the variable before reading its
- value, thus the name 'pre-increment'). Post-increment, which is
- written '$variable++' evaluates to the original value of
- $variable, before it was incremented (PHP increments the variable
- after reading its value, thus the name 'post-increment').</simpara>
-
- <simpara>
- A very common type of expressions are comparison expressions.
- These expressions evaluate to either 0 or 1, meaning &false; or &true;
- (respectively). PHP supports > (bigger than), >= (bigger than
- or equal to), == (equal), != (not equal), < (smaller than) and <=
- (smaller than or equal to). These expressions are most commonly used
- inside conditional execution, such as <literal>if</literal>
- statements.</simpara>
-
- <simpara>
- The last example of expressions we'll deal with here is combined
- operator-assignment expressions. You already know that if you
- want to increment $a by 1, you can simply write '$a++' or '++$a'.
- But what if you want to add more than one to it, for instance 3?
- You could write '$a++' multiple times, but this is obviously not a
- very efficient or comfortable way. A much more common practice is
- to write '$a = $a + 3'. '$a + 3' evaluates to the value of $a
- plus 3, and is assigned back into $a, which results in
- incrementing $a by 3. In PHP, as in several other languages
- like C, you can write this in a shorter way, which with time would
- become clearer and quicker to understand as well. Adding 3 to the
- current value of $a can be written '$a += 3'. This means exactly
- "take the value of $a, add 3 to it, and assign it back into $a".
- In addition to being shorter and clearer, this also results in
- faster execution. The value of '$a += 3', like the value of a
- regular assignment, is the assigned value. Notice that it is NOT
- 3, but the combined value of $a plus 3 (this is the value that's
- assigned into $a). Any two-place operator can be used in this
- operator-assignment mode, for example '$a -= 5' (subtract 5 from
- the value of $a), '$b *= 7' (multiply the value of $b by 7), etc.
+ Če predvidevamo, da ste seznanjeni s konceptom funkcij (če
+ niste, si oglejte poglavje o funkcijah), bi predvidevali da ko
+ zapišete <literal>$c = foo()</literal>, je to pravzaprav enako,
+ kot če bi zapisali <literal>$c = 5</literal> - kar je popolnoma
+ pravilno. Funkcije so izrazi, ki imajo vrednost vrnjene vrednosti funkcije.
+ Ker foo() vrne 5, je vrednost izraza 'foo()' enaka 5. Ponavadi funkcije
+ ne vrnejo neke statične vrednosti, ampak vrnejo neko izračunano vrednost.</simpara>
+
+ <simpara>
+ Seveda, za vrednosti v PHP-ju ne velja, da morajo biti številke in
+ velikokrat to tudi niso. PHP podpira tri skalarne tipe vrednosti:
+ številske vrednosti, plavajočo vejico in niz (skalarne vrednosti so
+ vrednosti, ki ji ne moremo 'razbiti' na manjše dele, kar recimo ne
+ velja za polja). PHP podpira tudi dva neskalarna tipa: polja in objekti.
+ Vsak od teh tipov vrednosti je lahko dodeljen neki spremenljivki, ali vrnjen
+ iz neke funkcije.</simpara>
+
+ <simpara>
+ Do sedaj, uporabniki PHP/FI 2 nebi smeli čutiti nobene spremembe.
+ Vseeno, PHP nadgrajuje izraze, tako kot ostali programski jeziki. PHP
+ je izrazni jezik v tem pomenu besede, da je skoraj vse, kar zapišemo, izraz.
+ Upoštevajte primer, ki smo ga že imeli, '$a = 5'. Zlahka opazimo,
+ da sta tukaj dve vrednosti, vrednost številske konstante in vrednost
+ spremenljivke $a kateri je bila dodeljena vrednost 5. V resnici pa je
+ tu še ena vrednost - vrednost samega prireditvenega stavka.
+ Prireditveni stavek sam, dobi vrednost same prireditve, v tem primeru 5.
+ V praksi to pomeni, da je '$a = 5', karkoli še naredi, izraz z vrednostjo
+ 5. Kar pomeni, da če zapisemo '$b = ($a = 5)', je enako zapisu
+ '$a = 5; $b = 5;' (podpičje označuje konec stavka). Ker so
+ pripreditveni stavki razčlenjeni od desne proti levi, lahko zapišemo
+ to tudi kot '$b = $a = 5'.</simpara>
+
+ <simpara>
+ Drugi dober primer izraza je pred- in po-povečanje in
+ manjšanje. Uporabniki PHP/FI 2, kot tudi drugih jezikov,
+ so verjetno seznanjeni z notacijo spremenljivka++ in spremenljivka--.
+ To sta operatorja za povečanje in pomanjšanje. V PHP/FI 2
+ stavek '$a++' nima nobene vrednosti (ni izraz) in ga zato tudi ne moremo
+ prirediti na noben način. PHP izboljša sposobnost
+ povečevanja/manjšanja s tem, da tudi to postane izraz, tako
+ kot v programskem jeziku C. V PHP-ju, kot v C-ju, obstajata dva tipa
+ povečevanja. - pred-povečevanje in po-povečevanje.
+ Oba povečata spremenljivko in efekt na spremenljivko je v obeh
+ primerih enak. Razlika je v tem, da pred-povečanje, zapisano kot
+ '++spremenljivka', vrne povečano vrednost (PHP poveča spremenljivko,
+ preden prebere njeno vrednost, od tu ime pred-povečanje). Po-povečanje,
+ katerega zapišemo kot 'spremenljivka++', vrne vrednost spremenljivke
+ pred povečanjem (PHP poveča vrednost spremenljivke šele ko
+ jo prebere).</simpara>
+
+ <simpara>
+ Zelo pogosti tip izraza je primerjalni izraz. Te izrazi lahko vrnejo
+ vrednost 0 ali 1, kar pomeni &false; ali &true;. PHP podpira
+ > (večji kot), >= (večji kot ali enak), == (enak),
+ != (neenak), < (manjšsi kot) in <= (manjši kot ali enak).
+ Te izrazi so najbolj pogosto uporabljeni znotraj pogojnih stavkov, kot so
+ <literal>if</literal> stavki.</simpara>
+
+ <simpara>
+ Zandji primer izrazov, ki jih bomo obdelali v tem poglavju je
+ kombiniran z opreratorjem in dodelitvenim izrazom. Kot že
+ veste, če želite $a povečati za 1, lahko enostavno
+ napišete '$a++' ali '++$a'. Kaj se pa zgodi, če bi
+ želeli povečati spremenljivko za recimo 3? Lahko bi napisali
+ '$a++' trikrat in dobili željeni rezultat, a to ni najbolj
+ učinkovita ali zadovoljiva rešitev. V praksi se uporablja
+ '$a = $a + 3'. '$a + 3' vrne vrednost spremenljivke $a plus 3 in jo
+ vrne nazaj v $a, kar pomeni, da se $a poveča za 3. V PHP-ju, kot
+ tudi v drugih programskih jezikih, lahko to zapišemo krajše,
+ kar bi čez čas bilo bolj jasno in lažje za razumeti. Torej,
+ če želimo vrednost spremenljivke $a povečati za 3,
+ preprosto zapišemo '$a += 3'. To pomeni: "vzemi vrednost
+ spremenljivke $a, jo povečaj za 3 in dodeli dobljeno vrednost
+ nazaj v spremenljivko $a". Poleg tega, da je ta način krajši
+ in lažji, je tudi hitrejši. Vrednost '$a += 3', kot vrednost
+ navadnega dodelitvenega izraza, je dodeljena vrednost. Zapomnite si, da
+ to NI 3, ampak skupna vrednost od $a + 3 (to ni vrednost, ki je dodeljena
+ spremenljivki $a). Uporabljate lahko tudi druge operatorje, kot naprimer
+ '$a -= 5' (odšteje 5 od vrednosti spremenljivke $a), '$b *= 7'
+ (množi vrednost spremenljivke $b z 7), itd.
</simpara>
<para>
- There is one more expression that may seem odd if you haven't seen
- it in other languages, the ternary conditional operator:
+ Obstaja še en izraz, ki se vam bo mogoče zdel čuden,
+ če ga še niste srečali v drugih jezikih - trojni
+ pogojni operator:
<informalexample><programlisting>
<![CDATA[
-$first ? $second : $third
+$prvi ? $drugi : $tretji
]]>
</programlisting></informalexample>
- If the value of the first subexpression is &true; (non-zero), then
- the second subexpression is evaluated, and that is the result of
- the conditional expression. Otherwise, the third subexpression is
- evaluated, and that is the value.
+ Če je vrednost prvega podizraza &true; (ni nič), potem
+ se izvede drugi podizraz, kar postane rezultat pogojnega izraza. V
+ nasprotnem primeru se izvede tretju podizraz, kar postane rezultat
+ pogojnega izraza.
</para>
<para>
- The following example should help you understand pre- and
- post-increment and expressions in general a bit better:
+ Spodnji primer bi vam moral pomagati malo bolje razumeti
+ pred-, po-povečanje in izraze na splosno:
<informalexample>
<programlisting role="php">
@@ -152,58 +148,55 @@
{
return $i*2;
}
-$b = $a = 5; /* assign the value five into the variable $a and $b */
-$c = $a++; /* post-increment, assign original value of $a
- (5) to $c */
-$e = $d = ++$b; /* pre-increment, assign the incremented value of
- $b (6) to $d and $e */
-
-/* at this point, both $d and $e are equal to 6 */
-
-$f = double($d++); /* assign twice the value of $d <emphasis>before</emphasis>
- the increment, 2*6 = 12 to $f */
-$g = double(++$e); /* assign twice the value of $e <emphasis>after</emphasis>
- the increment, 2*7 = 14 to $g */
-$h = $g += 10; /* first, $g is incremented by 10 and ends with the
- value of 24. the value of the assignment (24) is
- then assigned into $h, and $h ends with the value
- of 24 as well. */
+$b = $a = 5; /* dodeli vrednost 5 v spremenljivke $a in $b */
+$c = $a++; /* po-povecanje - dodeli originalno vrednost $a
+ (5) v $c */
+$e = $d = ++$b; /* pred-povecanje, dodeli povecano vrednost spremenljivke
+ $b (6) v $d in $e */
+
+/* v tej tocki, sta $d in $e enaka 6 */
+
+$f = double($d++); /* dodeli dvakrat vecjo vrednost spremenljivke $d,
+ <emphasis>preden</emphasis> jo povecamo, 2*6 = 12 v $f */
+$g = double(++$e); /* dodeli dvakrat vecjo vrednost spremenljivke $e,
+ <emphasis>po</emphasis> povecanju, 2*7 = 14 v $g */
+$h = $g += 10; /* $g je prvo povecan za 10 s cimer dobi vrednost 24.
+ Vrednost je potem dodeljena spremelnjivki $h,
+ ki ima potem pravtako vrednost 24 */
]]>
</programlisting>
</informalexample>
</para>
<simpara>
- In the beginning of the chapter we said that we'll be describing
- the various statement types, and as promised, expressions can be
- statements. However, not every expression is a statement. In
- this case, a statement has the form of 'expr' ';' that is, an
- expression followed by a semicolon. In '$b=$a=5;', $a=5 is a
- valid expression, but it's not a statement by itself. '$b=$a=5;'
- however is a valid statement.</simpara>
+ V začetku tega poglavja smo zapisali, da bomo opisali različne
+ tipe stavkov in kot obljubljeno, izraz je lahko stavek. A vseeno, ni vsak
+ izraz stavek. V tem primeru ima stavek obliko 'izraz' ';', to je izraz
+ ki mu sledi podpičje. V '$b=$a=5;', $a=5 je veljaven izraz,
+ ampak ni stavek sam po sebi. '$b=$a=5;' pa je veljaven stavek.</simpara>
<simpara>
- One last thing worth mentioning is the truth value of expressions.
- In many events, mainly in conditional execution and loops, you're
- not interested in the specific value of the expression, but only
- care about whether it means &true; or &false;.
+ Zadnja stvar, ki bi bila vredna omembe je resnična vrednost
+ izraza. V veliko primerih, večinoma v pogojnem izvajanju ali
+ zankah, vas ne zanima toliko sama vrednost izraza, ampak samo ali je
+ ta izraz &true; ali &false;.
<!-- (PHP doesn't have a
dedicated boolean type) : WRONG, php does. -->
- The constants &true; and &false; (case-insensitive) are the two
- possible boolean values. When necessary, an expression is
- automatically converted to boolean. See the
- <link linkend="language.types.typecasting">section about
- type-casting</link> for details about how.
+ Konstante &true; in &false; (majhne ali velike črke) sta dve
+ najbolj verjetne boolean vrednosti. Ko je potrebno, se izraz
+ avtomatsko konvertira v boolean vrednost. Poglejte si
+ <link linkend="language.types.typecasting">section about
+ type-casting</link> za več informacij o tem.
</simpara>
<simpara>
- PHP provides a full and powerful implementation of expressions, and
- documenting it entirely goes beyond the scope of this manual. The
- above examples should give you a good idea about what expressions
- are and how you can construct useful expressions. Throughout the
- rest of this manual we'll write <replaceable>expr</replaceable>
- to indicate any valid PHP expression.</simpara>
+ PHP zagotavlja popolno implementacijo izrazov in če bi želeli
+ dokumentirati vse možnosti in načine uporabe, bi bilo to
+ preveč za ta priročnik. Zgornji primeri naj bi vam dali
+ idejo kaj izrazi so in kako sestaviti uporabne izraze. Skozi ta
+ priročnik bomo, ko bomo želeli poudariti veljaven PHP izraz,
+ zapisali to kot <replaceable>expr</replaceable>.
</chapter>