1
0
mirror of https://github.com/php/doc-tr.git synced 2026-03-23 23:02:09 +01:00
Files
2023-07-18 09:44:17 +03:00

111 lines
3.6 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="utf-8"?>
<!-- EN-Revision: bbaf4fea6946bf6d0b67573d5f2f96c5a2c5d678 Maintainer: nilgun Status: ready -->
<sect1 xml:id="control-structures.elseif" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<title>elseif/else if</title>
<?phpdoc print-version-for="elseif"?>
<para>
<literal>elseif</literal>, isminden de anlaşılacağı gibi,
<literal>if</literal> ve <literal>else</literal> deyimlerinin biraraya
gelmesiyle oluşur. <literal>else</literal> gibi, orijinal
<literal>if</literal> ifadesinin &false; döndürdüğü durumda farklı bir
deyimin çalıştırılması için kullanılır. Ancak,
<literal>else</literal>'ten farklı olarak, ilgili deyimi sadece
kendisine ait koşullu ifade &true; değerini döndürdüğü takdirde
çalıştıracaktır. Örneğin, aşağıdaki kod <computeroutput>a büyüktür
b</computeroutput>, <computeroutput>a eşittir b</computeroutput> ya da
<computeroutput>a küçüktür b</computeroutput> iletisini
görüntüleyecektir:
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
if ($a > $b) {
echo "a büyüktür b";
} elseif ($a == $b) {
echo "a eşittir b";
} else {
echo "a küçüktür b";
}
?>
]]>
</programlisting>
</informalexample>
</para>
<simpara>
Aynı <literal>if</literal> deyimine ait birden çok
<literal>elseif</literal> bulunabilir. İlk önce hangi
<literal>elseif</literal> deyimi &true; değerini döndürürse (eğer
döndüren varsa) o deyim çalıştırılır. Bu deyim 'elseif' biçiminde tek
sözcük olarak kullanılabileceği gibi, 'else if' biçiminde iki sözcük
olarak da kullanılabilir, sonuç aynı olacaktır. Sözdiziminin
anlamlandırılmasıısından küçük bir farklılık olsa da (C dilinde de
böyledir) sonuç olarak her ikisi de aynı sonucu üretecektir.
</simpara>
<simpara>
<literal>elseif</literal> ifadesi yalnızca kendisinden önceki
<literal>if</literal> ifadesi ve bu ifadeye bağlı kendisinden önce gelen
diğer tüm <literal>elseif</literal> ifadeleri &false; ile
sonuçlandığında çalıştırılır ve &true; olarak değerlendirilir.
</simpara>
<note>
<simpara>
<literal>elseif</literal> (tek sözcük) ve
<literal>else if</literal> (iki sözcük), yukarıdaki
örnekten anlaşılacağı üzere sadece kaşlı ayraçlar kullanıldığı zaman
tamamen aynı şekilde ele alınır.
<literal>if</literal> ve <literal>elseif</literal> için iki noktalı
sözdizimi kullanıldığında <literal>elseif</literal> iki sözcüğe
ayrılmamalıdır, yoksa PHP bir çözümleme hatası vererek başarısız olur.
</simpara>
</note>
<para>
<informalexample>
<programlisting role="php">
<![CDATA[
<?php
/* Yanlış Yöntem: */
if ($a > $b):
echo $a." büyüktür ".$b;
else if ($a == $b): // Bu derlenmez.
echo "Üstteki satır bir çözümleme hatasına yol açar.";
endif;
/* Doğru Yöntem: */
if ($a > $b):
echo $a." büyüktür ".$b;
elseif ($a == $b): // Sözcüklerin birleşik oluşuna dikkat!
echo $a." eşittir ".$b;
else:
echo $a." ne büyük ne de eşittir ".$b;
endif;
?>
]]>
</programlisting>
</informalexample>
</para>
</sect1>
<!-- 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
-->