cvs: phpdoc /tr/language expressions.xml

From: Date: Thu, 13 Dec 2001 16:22:04 +0000
Subject: cvs: phpdoc /tr/language expressions.xml
Groups: php.doc 
Request: Send a blank email to phpdoc+get-969339705@lists.php.net to get a copy of this message
tpug Thu Dec 13 11:22:04 2001 EDT Added files: /phpdoc/tr/language expressions.xml Log: complete translation by Alper

Index: phpdoc/tr/language/expressions.xml +++ phpdoc/tr/language/expressions.xml <?xml version="1.0" encoding="iso-8859-9"?> <!-- $Revision: 1.1 $ --> <chapter id="language.expressions"> <title>&Idot;fadeler</title> <simpara> &Idot;fadeler PHP'nin en önemli yap&inodot; ta&scedil;&inodot;d&inodot;r. PHP'de yazd&inodot;&gbreve;&inodot;n&inodot;z her&scedil;ey bir ifadedir. &Idot;fadelerin en yal&inodot;n fakat en do&gbreve;ru anlat&inodot;m&inodot;, "de&gbreve;eri olan her &scedil;ey"dir. </simpara> <simpara> &Idot;fadelerin en temel &scedil;ekilleri sabitler ve de&gbreve;i&scedil;kenlerdir. "$a = 5" yazd&inodot;&gbreve;&inodot;n&inodot;zda, '5'i $a'ya atars&inodot;n&inodot;z. '5', kolayl&inodot;kla görüldü&gbreve;ü üzere de&gbreve;er olarak 5'tir, ba&scedil;ka deyi&scedil;le '5' de&gbreve;eri 5 olan bir ifadedir (bu durumda, '5' tam say&inodot; sabittir). </simpara> <simpara> Bu atamadan sonra, $a'n&inodot;n de&gbreve;erinin de 5 olmas&inodot;n&inodot; beklersiniz, yani $b = $a yazarsan&inodot;z, bunun sanki $b = 5 yazm&inodot;&scedil;s&inodot;n&inodot;z gibi çal&inodot;&scedil;mas&inodot;n&inodot; beklersiniz. Ba&scedil;ka deyi&scedil;le, $a da de&gbreve;eri 5 olan bir ifadedir. Her&scedil;ey yolunda giderse, bu kesin hatlar&inodot;yla olu&scedil;acak durumdur. </simpara> <para> &Idot;fadelerin biraz daha karma&scedil;&inodot;k örnekleri fonksiyonlard&inodot;r. Örne&gbreve;in, &scedil;u fonksiyonlar&inodot; ele alal&inodot;m: <informalexample> <programlisting role="php"> <![CDATA[ function foo () { return 5; } ]]> </programlisting> </informalexample></para> <simpara> Fonksiyon kavram&inodot;na a&scedil;ina oldu&gbreve;unuzu varsayarsak (e&gbreve;er de&gbreve;ilseniz fonksiyonlarla ilgili bölüme bak&inodot;n&inodot;z), <literal>$c = foo()</literal> yazd&inodot;&gbreve;&inodot;n&inodot;zda <literal>$c = 5</literal> yazm&inodot;&scedil;s&inodot;n&inodot;z gibi olmas&inodot;n&inodot; beklersiniz, ve hakl&inodot;s&inodot;n&inodot;z. Fonksiyonlar geri dönü&scedil; de&gbreve;erleri de&gbreve;erindeki ifadelerdir. foo() 5 döndürdü&gbreve;ü, 'foo()' ifadesinin de&gbreve;eri 5'tir. Genellikle fonksiyonlar böyle dura&gbreve;an de&gbreve;erler döndürmek yerine bir &scedil;eyleri hesaplarlar. </simpara> <simpara> <!-- dirge: floating point => kayan noktal&inodot; --> <!-- dirge: composite => bile&scedil;ik --> Do&gbreve;al olarak, PHP'deki de&gbreve;erler tam say&inodot; olmak zorunda de&gbreve;ildir, ve ço&gbreve;u zaman de&gbreve;illerdir. PHP 3 çe&scedil;itli say&inodot;l de&gbreve;erleri destekler: tam say&inodot; de&gbreve;erler, kayan noktal&inodot; say&inodot;lar, dizgiler (say&inodot;l de&gbreve;erler daha küçük parçalara 'ayr&inodot;&scedil;t&inodot;ramayaca&gbreve;&inodot;n&inodot;z' de&gbreve;erlerdir, örne&gbreve;in dizileri ayr&inodot;&scedil;t&inodot;rabilirsiniz). PHP ayrica iki çe&scedil;it bile&scedil;ik (say&inodot;l olmayan) de&gbreve;er destekler: diziler ve nesneler. Bu de&gbreve;er çe&scedil;itlerinin her biri de&gbreve;i&scedil;kenlere atanabilir ya da fonksiyonlarca döndürülebilir. </simpara> <simpara> Buraya kadar, PHP/FI 2 kullan&inodot;c&inodot;lar&inodot; bir de&gbreve;i&scedil;iklik hissetmemi&scedil; olmal&inodot;. Halbuki, PHP ifadeleri çok daha ilerilere ta&scedil;&inodot;r, ba&scedil;ka bir çok programa dilinin yapt&gbreve;&inodot; gibi. PHP ifadelere dayal&inodot; bir dildir, her&scedil;eyin bir ifade oldu&gbreve;u fikri etraf&inodot;na kurulmu&scedil;tur. Daha önce göz att&inodot;&gbreve;&inodot;m&inodot;z örne&gbreve;i ele alal&inodot;m, '$a = 5'. Burada iki de&gbreve;erin yer ald&inodot;&gbreve;&inodot;n&inodot; görmek kolay, tam say&inodot; sabit olan '5'in de&gbreve;eri ve 5' olarak de&gbreve;i&scedil;tirilen $a'n&inodot;n de&gbreve;eri. Ama gerçek &scedil;u ki burada yer alan bir de&gbreve;er daha var, bu da atama i&scedil;leminin kendi de&gbreve;eri. Ataman&inodot;n kendisi atanan de&gbreve;eri al&inodot;r, burada 5. Gerçek hayatta, ne yapt&inodot;&gbreve;&inodot; önemli olmadan, '$a = 5', 5 de&gbreve;erindeki bir ifadedir. Bu sebepten, '$b = ($a = 5)' yazmakla '$a = 5; $b = 5;' yazmak ayn&inodot;d&inodot;r (noktal&inodot; virgüller ifade sonunu belirtir). Atamalar sa&gbreve;dan sola gerçekle&scedil;ti&gbreve;inden, isterseniz '$b = $a = 5' de yazabilirsiniz. </simpara> <simpara> <!-- dirge: pre-increment => ön-art&inodot;r&inodot;m --> <!-- dirge: post-increment => son-art&inodot;r&inodot;m --> &Idot;fadeye dayal&inodot; olman&inodot;n ba&scedil;ka iyi bir örne&gbreve;i de ön- ve son-art&inodot;r&inodot;m ve azalt&inodot;md&inodot;r. PHP/FI 2'nin ve ba&scedil;ka pek çok dilin kullan&inodot;c&inodot;lar&inodot; de&gbreve;i&scedil;ken++ ve de&gbreve;i&scedil;ken-- yaz&inodot;m&inodot;na a&scedil;ina olacakt&inodot;r. Bunlar art&inodot;r&inodot;m ve azalt&inodot;m i&scedil;lemleridir. PHP/FI 2'de, '$a++' bildiriminin hiç bir de&gbreve;eri yoktu (ifade de&gbreve;ildi), bu sebepten bunu atayamazd&inodot;n&inodot;z veya ba&scedil;ka &scedil;ekilde kullanamazd&inodot;n&inodot;z. PHP bunlar&inodot;, C'deki gibi, ifadelere çevirerek art&inodot;r&inodot;m/azalt&inodot;m kabiliyetlerini geli&scedil;tirdi. PHP'de, C'de oldu&gbreve;u gibi, iki çe&scedil;it art&inodot;r&inodot;m vard&inodot;r - ön-art&inodot;r&inodot;m ve son-art&inodot;r&inodot;m. Hem ön-art&inodot;r&inodot;m hem son-art&inodot;r&inodot;m&inodot;n de&gbreve;i&scedil;ken de&gbreve;erini art&inodot;rmas&inodot; kesindir, ve de&gbreve;i&scedil;ken üzerindeki etkileri birbiriyle ayn&inodot;d&inodot;r. Aralar&inodot;ndaki fark, art&inodot;r&inodot;m ifadesinin de&gbreve;eridir. '++$de&gbreve;i&scedil;ken' olarak yaz&inodot;lan ön-art&inodot;r&inodot;m&inodot;n de&gbreve;eri art&inodot;r&inodot;lan de&gbreve;er kadard&inodot;r (PHP de&gbreve;i&scedil;kenin de&gbreve;erini okumadan önce art&inodot;r&inodot;r, bu sebepten ismi ön-art&inodot;r&inodot;m'd&inodot;r). '$de&gbreve;i&scedil;ken++' olarak yaz&inodot;lan son-art&inodot;r&inodot;m&inodot;n de&gbreve;eri $de&gbreve;i&scedil;ken'in orijinal de&gbreve;eri kadard&inodot;r, art&inodot;r&inodot;lmadan önceki (PHP de&gbreve;i&scedil;kenin de&gbreve;erini okuduktan sonra art&inodot;r&inodot;r, bu sebepten ismi 'son-art&inodot;r&inodot;m'd&inodot;r). </simpara> <simpara> &Idot;fadelerin çok yayg&inodot;n bir biçimi kar&scedil;&inodot;la&scedil;t&inodot;rma ifadeleridir. Bu ifadeler, &false; ya da &true; anlam&inodot;na gelen 0 ya da 1 de&gbreve;erlerinden birini al&inodot;r. PHP &gt; (büyüktür), &gt;= (büyük e&scedil;ittir), == (e&scedil;ittir), != (e&scedil;it de&gbreve;ildir), &lt; (küçüktür), ve &lt;= (küçük e&scedil;ittir) kar&scedil;&inodot;la&scedil;t&inodot;rma i&scedil;lemlerini destekler. Bu ifadeler genellikle ko&scedil;ullu çal&inodot;&scedil;t&inodot;rmalarda kullan&inodot;l&inodot;r, örne&gbreve;in <literal>if</literal> bildirimleri gibi. </simpara> <simpara> &Idot;fadelerin burada ele alaca&gbreve;&inodot;m&inodot;z son örne&gbreve;i bile&scedil;ik i&scedil;lem-atama ifadeleri. $a'y&inodot; 1 art&inodot;rmak istedi&gbreve;inizde basitçe '$a++' ya da '++$a' yazaca&gbreve;&inodot;n&inodot;z&inodot; biliyorsunuz. Peki ya daha fazla art&inodot;rmak isterseniz, örne&gbreve;in 3 kadar? Birkaç defa '$a++' yazabilirsiniz, fakat bunun etkin ya da konforlu bir yöntem olmad&inodot;&gbreve;&inodot; muhakkak. Çok daha yayg&inodot;n bir yöntem '$a = $a + 3' yazmakt&inodot;r. '$a + 3', $a art&inodot; 3 de&gbreve;erini al&inodot;r, ve $a'ya yaz&inodot;l&inodot;r, bu da $a'n&inodot;n 3 kadar art&inodot;r&inodot;lmas&inodot; demektir. PHP'de ve C gibi daha birçok dilde, bunu daha k&inodot;sa bir yolla yazabilirsiniz, zamanla daha aç&inodot;k ve anla&scedil;&inodot;labilir olacak bir yolla. $a'n&inodot;n o anki de&gbreve;erine 3 eklemek '$a += 3' olarak yaz&inodot;labilir. Bu tam olarak &quot;$a'n&inodot;n de&gbreve;erini al, buna 3 ekle, ve tekrar $a'ya yaz&quot; demektir. Daha aç&inodot;k ve anla&scedil;&inodot;l&inodot;r olmas&inodot;n&inodot;n yan&inodot;nda daha h&inodot;zl&inodot; da çal&inodot;&scedil;&inodot;r. '$a += 3'ün de&gbreve;eri, s&inodot;radan bir ataman&inodot;n de&gbreve;eri gibi, atanan de&gbreve;erdir. Dikkat edin ki bu 3 de&gbreve;ildir, $a art&inodot; 3'ün birle&scedil;mi&scedil; de&gbreve;eridir ($a'ya atanan de&gbreve;er budur). Her iki-parçal&inodot; i&scedil;lem bu i&scedil;lem-atama kipinde kullan&inodot;labilir, örne&gbreve;in '$a -= 5' ($a'n&inodot;n de&gbreve;erinden 5 eksilt), '$b *= 7' ($b'nin de&gbreve;erini 7 ile çarp), vs. </simpara> <para> <!-- dirge: ternary => ternary --> Ba&scedil;ka dillerde görmediyseniz garip gelebilecek bir ifade daha var, ternary ko&scedil;ulu i&scedil;lemi: <informalexample><programlisting> <![CDATA[ $ilk ? $ikinci : $üçüncü ]]> </programlisting></informalexample> E&gbreve;er ilk alt-ifadenin de&gbreve;eri &true; ise (0 de&gbreve;ilse), ikinci alt-ifade çal&inodot;&scedil;t&inodot;r&inodot;l&inodot;r, ve bu ko&scedil;ullu ifadenin sonucudur. De&gbreve;ilse, üçüncü alt-ifade çal&inodot;&scedil;t&inodot;r&inodot;l&inodot;r, ve de&gbreve;er budur. </para> <para> A&scedil;a&gbreve;&inodot;daki örnek size, ön- ve son-art&inodot;r&inodot;m i&scedil;lemlerini ve ifadeleri genel olarak biraz daha iyi anlaman&inodot;zda yard&inodot;mc&inodot; olacakt&inodot;r: <informalexample> <programlisting role="php"> <![CDATA[ function double($i) { return $i*2; } $b = $a = 5; /* $a ve $b'ye 5 de&gbreve;erini ata */ $c = $a++; /* son-art&inodot;r, $a'n&inodot;n orjinal de&gbreve;erini (5) $c'ye ata */ $e = $d = ++$b; /* ön-art&inodot;r, $b'nin art&inodot;r&inodot;lm&inodot;&scedil; de&gbreve;erini (6) $d ve $e'ye ata */ /* bu noktada $d ve $e 6'ya e&scedil;it */ $f = double($d++); /* $d'nin iki kat&inodot;n&inodot; art&inodot;r&inodot;mdan <emphasis>önce</emphasis>, 2*6 = 12, $f'ye ata */ $g = double(++$e); /* $e'nin iki kat&inodot;n&inodot; art&inodot;r&inodot;mdan <emphasis>sonra</emphasis>, 2*7 = 14, $g'ye ata */ $h = $g += 10; /* önce, $g 10 art&inodot;r&inodot;l&inodot;r 24 olur. Sonra, ataman&inodot;n de&gbreve;eri (24) $h'ye atan&inodot;r, ve $h'de 24 olur. */ ]]> </programlisting> </informalexample> </para> <simpara> Bölümün ba&scedil;&inodot;nda çe&scedil;itli bildirimleri anlataca&gbreve;&inodot;z demi&scedil;tik, ve söz verdi&gbreve;imiz gibi, ifadeler de bildirim olabilir. Fakat, her ifade bir bildirim de&gbreve;ildir. Bu durumda, bildirim 'ifade' ';' &scedil;eklindedir, yani noktal&inodot; virgülle izlenen bir ifadedir. '$b=$a=5;'te, $a=5 geçerli bir ifadedir, fakat kendi ba&scedil;&inodot;na bir bildirim de&gbreve;ildir. Fakat '$b=$a=5;', geçerli bir bildiridir. </simpara> <simpara> Bahsedilmesi gereken son bir nokta, ifadelerin do&gbreve;rulu&gbreve;udur. Birçok olayda, özellikle ko&scedil;ullu çal&inodot;&scedil;t&inodot;r&inodot;mlarda ve döngülerde, ifadenin kesin de&gbreve;eri ile de&gbreve;il, &true; veya &false; oldu&gbreve;uyla ilgilenirsiniz. <!-- (PHP doesn't have a dedicated boolean type) : WRONG, php does. --> <!-- dirge: type-casting => tür dönü&scedil;ümleri --> &true; ve &false; (büyük/küçük harf ayr&inodot;m&inodot; yok) sabitleri, mümkün olan iki boole de&gbreve;erdir. Gerekli oldu&gbreve;unda bir ifade otomatik olarak boole de&gbreve;erine çevrilir. Bunun hakk&inodot;nda daha fazla bilgi için <link linkend="language.types.typecasting">tür dönü&scedil;ümleri</link> bölümüne bak&inodot;n&inodot;z. </simpara> <simpara> <!-- dirge: expr => expr --> PHP'deki ifade uygulamas&inodot; tam ve çok güçlüdür, ve tamamiyle aç&inodot;klanmas&inodot; bu el kitab&inodot;n&inodot;n s&inodot;n&inodot;rlar&inodot; d&inodot;&scedil;&inodot;ndad&inodot;r. Yukar&inodot;daki örnekler size ifadelerin ne oldu&gbreve;u ve i&scedil;e yarar ifadeleri nas&inodot;l olu&scedil;turaca&gbreve;&inodot;n&inodot;z konusunda fikir vermi&scedil;tir. Bu el kitab&inodot;n&inodot;n içinde her türlü geçerli PHP ifadesini kastetmek için <replaceable>expr</replaceable> yazaca&gbreve;&inodot;z. </simpara> </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 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 -->
« previous php.doc (#969339705) next »