com doc/tr: update for sync with English docs.: reference/array/functions/natsort.xml reference/array/functions/next.xml reference/array/functions/prev.xml reference/array/functions/range.xml reference/array/functions/reset.xml reference/array/functions/shuffle.xml reference/array/functions/sort.xml reference/array/functions/usort.xml reference/bc/book.xml reference/bc/setup.xml
[email protected] (Nilgün Belma Bugüner) Sat, 13 Mar 2021 08:05:44 +0000
| Newsgroups | php.doc.tr |
|---|---|
| Message-ID | <[email protected]> |
Commit: 07d6e0a2a8896907203c2a989e0e2a61fdb4a98e Author: Nilgün Belma Bugüner <[email protected]> Sat, 13 Mar 2021 11:05:44 +0300 Parents: 612bf73aaf95b5178ab9ae1e11fe2ef683dd5946 Branches: master Link: http://git.php.net/?p=doc/tr.git;a=commitdiff;h=07d6e0a2a8896907203c2a989e0e2a61fdb4a98e Log: update for sync with English docs. Changed paths: M reference/array/functions/natsort.xml M reference/array/functions/next.xml M reference/array/functions/prev.xml M reference/array/functions/range.xml M reference/array/functions/reset.xml M reference/array/functions/shuffle.xml M reference/array/functions/sort.xml M reference/array/functions/usort.xml M reference/bc/book.xml M reference/bc/setup.xml
diff_07d6e0a2a8896907203c2a989e0e2a61fdb4a98e.txt
(text/plain, 30.5 KB)
diff --git a/reference/array/functions/natsort.xml b/reference/array/functions/natsort.xml
index ac540b23..8fa7b7be 100644
--- a/reference/array/functions/natsort.xml
+++ b/reference/array/functions/natsort.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
+<!-- EN-Revision: 9af43469f46843451955b8926fe470a9f3d45034 Maintainer: nilgun Status: ready -->
<refentry xml:id="function.natsort" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>natsort</refname>
@@ -19,6 +19,7 @@
verilir. Bu algoritma ile <function>sort</function> işlevinin yaptığı
standart sıralama arasındaki farkı gösteren bir örnek aşağıdadır.
</para>
+ ¬e.sort-unstable;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
@@ -45,13 +46,13 @@
&reftitle.examples;
<para>
<example>
- <title>- <function>natsort</function> örneği</title>
+ <title>- <function>natsort</function> genel kullanım örnekleri</title>
<programlisting role="php">
<![CDATA[
<?php
$array1 = $array2 = array("img12.png", "img10.png", "img2.png", "img1.png");
-sort($array1);
+asort($array1);
echo "Standart sıralama\n";
print_r($array1);
@@ -67,10 +68,10 @@ print_r($array2);
Standart sıralama
Array
(
- [0] => img1.png
+ [3] => img1.png
[1] => img10.png
- [2] => img12.png
- [3] => img2.png
+ [0] => img12.png
+ [2] => img2.png
)
Doğal sıralama
@@ -89,6 +90,72 @@ Array
sayfasına bakınız.
</para>
</example>
+ <example>
+ <title>- Olası sorunları gösteren <function>natsort</function> örnekleri</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+echo "Negatif sayılar\n";
+$negative = array('-5','3','-2','0','-1000','9','1');
+print_r($negative);
+natsort($negative);
+print_r($negative);
+
+echo "Sıfır doldurma\n";
+$zeros = array('09', '8', '10', '009', '011', '0');
+print_r($zeros);
+natsort($zeros);
+print_r($zeros);
+?>
+]]>
+ </programlisting>
+ &example.outputs;
+ <screen>
+<![CDATA[
+Negatif sayılar
+Array
+(
+ [0] => -5
+ [1] => 3
+ [2] => -2
+ [3] => 0
+ [4] => -1000
+ [5] => 9
+ [6] => 1
+)
+Array
+(
+ [2] => -2
+ [0] => -5
+ [4] => -1000
+ [3] => 0
+ [6] => 1
+ [1] => 3
+ [5] => 9
+)
+
+Sıfır doldurma
+Array
+(
+ [0] => 09
+ [1] => 8
+ [2] => 10
+ [3] => 009
+ [4] => 011
+ [5] => 0
+)
+Array
+(
+ [5] => 0
+ [1] => 8
+ [3] => 009
+ [0] => 09
+ [2] => 10
+ [4] => 011
+)
+]]>
+ </screen>
+ </example>
</para>
</refsect1>
<refsect1 role="seealso">
diff --git a/reference/array/functions/next.xml b/reference/array/functions/next.xml
index 5d01ef8d..75d6fcda 100644
--- a/reference/array/functions/next.xml
+++ b/reference/array/functions/next.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
+<!-- EN-Revision: cd943f94a013b74df8765ab8e1a620a916a64a85 Maintainer: nilgun Status: ready -->
<refentry xml:id="function.next" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>next</refname>
@@ -10,7 +10,7 @@
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>next</methodname>
- <methodparam><type>array</type><parameter role="reference">dizi</parameter></methodparam>
+ <methodparam><type class="union"><type>array</type><type>object</type></type><parameter role="reference">dizi</parameter></methodparam>
</methodsynopsis>
<para>
<function>next</function> işlevi bir farkla <function>current</function>
@@ -71,10 +71,15 @@ $kip = end($araç); // $kip = 'uçak';
&reftitle.notes;
<note>
<simpara>
- Bir dizinin sonundaki elemanın değerinin <type>boolean</type>
- &false; olup olmadığını anlayamazsınız. &false; değerli elemanlar içeren
+ Bir dizinin sonundaki elemanın değerinin <type>bool</type>
+ &false; olup olmadığı anlaşılamaz. &false; değerli elemanlar içeren
bir dizide bilinçli olarak ilerlemenin en doğru yolu
- <function>each</function> kullanmaktır.
+ &foreach; deyimini kullanmaktır.
+ </simpara>
+ <simpara>
+ Yine de <function>next</function> işlevi kullanılmak istenirse, dizinin
+ sonuna ulaşılıp ulaşılmadığını anlamak için <function>key</function>
+ işlevinde dönen değerin &null; olduğu doğrulanmalıdır.
</simpara>
</note>
</refsect1>
@@ -87,7 +92,7 @@ $kip = end($araç); // $kip = 'uçak';
<member><function>end</function></member>
<member><function>prev</function></member>
<member><function>reset</function></member>
- <member><function>each</function></member>
+ <member>&foreach;</member>
</simplelist>
</para>
</refsect1>
diff --git a/reference/array/functions/prev.xml b/reference/array/functions/prev.xml
index 820c3986..733a65bb 100644
--- a/reference/array/functions/prev.xml
+++ b/reference/array/functions/prev.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
+<!-- EN-Revision: cd943f94a013b74df8765ab8e1a620a916a64a85 Maintainer: nilgun Status: ready -->
<refentry xml:id="function.prev" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>prev</refname>
@@ -10,7 +10,7 @@
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>prev</methodname>
- <methodparam><type>array</type><parameter role="reference">dizi</parameter></methodparam>
+ <methodparam><type class="union"><type>array</type><type>object</type></type><parameter role="reference">dizi</parameter></methodparam>
</methodsynopsis>
<para>
Dahili dizi göstericisini bir geriletir.
@@ -19,6 +19,7 @@
<function>prev</function> işlevi dahili dizi göstericisini bir ileri değil
de bir geri alması dışında <function>next</function> gibidir.
</para>
+ &return.falseproblem;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
@@ -64,13 +65,12 @@ $kip = end($araç); // $kip = 'uçak';
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
- &return.falseproblem;
<note>
<simpara>
- Bir dizinin başlangıcındaki elemanın değerinin <type>boolean</type>
- &false; olup olmadığını anlayamazsınız. &false; değerli elemanlar içeren
+ Bir dizinin başlangıcındaki elemanın değerinin <type>bool</type>
+ &false; olup olmadığı anlaşılamaz. &false; değerli elemanlar içeren
bir dizide bilinçli olarak ilerlemenin en doğru yolu
- <function>each</function> kullanmaktır.
+ &foreach; deyimini kullanmaktır.
</simpara>
</note>
</refsect1>
@@ -82,7 +82,7 @@ $kip = end($araç); // $kip = 'uçak';
<member><function>end</function></member>
<member><function>next</function></member>
<member><function>reset</function></member>
- <member><function>each</function></member>
+ <member>&foreach;</member>
</simplelist>
</para>
</refsect1>
diff --git a/reference/array/functions/range.xml b/reference/array/functions/range.xml
index c3d5cc01..270432ac 100644
--- a/reference/array/functions/range.xml
+++ b/reference/array/functions/range.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
+<!-- EN-Revision: 755faca201b5ba15e23735f21ed056b47d954398 Maintainer: nilgun Status: ready -->
<refentry xml:id="function.range" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>range</refname>
@@ -10,9 +10,9 @@
&reftitle.description;
<methodsynopsis>
<type>array</type><methodname>range</methodname>
- <methodparam><type>mixed</type><parameter>düşük</parameter></methodparam>
- <methodparam><type>mixed</type><parameter>yüksek</parameter></methodparam>
- <methodparam choice="opt"><type>number</type><parameter>adım</parameter></methodparam>
+ <methodparam><type class="union"><type>string</type><type>int</type><type>float</type></type><parameter>başlangıç</parameter></methodparam>
+ <methodparam><type class="union"><type>string</type><type>int</type><type>float</type></type><parameter>bitiş</parameter></methodparam>
+ <methodparam choice="opt"><type class="union"><type>int</type><type>float</type></type><parameter>adım</parameter><initializer>1</initializer></methodparam>
</methodsynopsis>
<para>
Aralığı belirtilen elemanları içeren bir dizi oluşturur.
@@ -23,18 +23,18 @@
<para>
<variablelist>
<varlistentry>
- <term><parameter>düşük</parameter></term>
+ <term><parameter>başlangıç</parameter></term>
<listitem>
<para>
- Düşük değer.
+ Aralığın ilk değeri.
</para>
</listitem>
</varlistentry>
<varlistentry>
- <term><parameter>yüksek</parameter></term>
+ <term><parameter>bitiş</parameter></term>
<listitem>
<para>
- Yüksek değer.
+ Aralığın son değeri.
</para>
</listitem>
</varlistentry>
@@ -42,8 +42,8 @@
<term><parameter>adım</parameter></term>
<listitem>
<para>
- Bu değiştirge belirtilmişse eleman sırası artış değerini belirler. Bir
- pozitif sayı olmalıdır. Belirtilmezse 1 öntanımlıdır.
+ Bu değiştirge belirtilmişse eleman sırası artış değerini belirler.
+ Pozitif sayı olmalıdır. Belirtilmezse 1 öntanımlıdır.
</para>
</listitem>
</varlistentry>
@@ -53,51 +53,8 @@
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
- <parameter>düşük</parameter>-<parameter>yüksek</parameter> aralığındaki
- elemanlardan oluşan bir dizi döner. Eğer düşük > yüksek ise sıralama
- yüksekten düşüğe doğru olur.
- </para>
- </refsect1>
- <refsect1 role="changelog">
- &reftitle.changelog;
- <para>
- <informaltable>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>&Version;</entry>
- <entry>&Description;</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>5.0.0</entry>
- <entry>
- İsteğe bağlı <parameter>adım</parameter> değiştirgesi eklendi.
- </entry>
- </row>
- <row>
- <entry>4.1.0'ten 4.3.2'ye kadar</entry>
- <entry>
- PHP'nin 4.1.0 ile 4.3.2 sürümleri arasında <function>range</function>
- sayısal dizgeleri sayı değil dizge olarak görür ve bir karakter dizisi
- olarak ele alır. Örneğin, <literal>"4242"</literal> değeri
- <literal>"4"</literal> olarak ele alınır.
- </entry>
- </row>
- <row>
- <entry>4.1.0</entry>
- <entry>
- PHP 4.1.0 öncesinde <function>range</function> sadece tamsayı dizileri
- artan sırada oluşturur. Dizgeler ve azalan sıralı tamsayı dizilerine
- destek 4.1.0 sürümünde eklenmiştir. Dizge değerlerin uzunluğu bir bayt
- ile sınırlıdır, dolayısıyla daha uzun dizgelerin sadece ilk karakteri
- kullanılır.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
+ <parameter>başlangıç</parameter> ve <parameter>bitiş</parameter> dahil ikisi
+ arasındaki elemanlardan oluşan bir dizi döner.
</para>
</refsect1>
<refsect1 role="examples">
@@ -113,17 +70,24 @@ foreach (range(0, 12) as $number) {
echo $number;
}
-// adım değiştirgesi 5.0.0 sürümünde devreye girdi
+echo "\n";
+
+// adım değiştirgesi
// array(0, 10, 20, 30, 40, 50, 60, 70, 80, 90, 100)
foreach (range(0, 100, 10) as $number) {
echo $number;
}
-// Dizgelere destek 4.1.0 sürümünde devreye girdi
+echo "\n";
+
+// Karakter dizilerinin kullanımı
// array('a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i');
foreach (range('a', 'i') as $letter) {
echo $letter;
}
+
+echo "\n";
+
// array('c', 'b', 'a');
foreach (range('c', 'a') as $letter) {
echo $letter;
@@ -134,6 +98,15 @@ foreach (range('c', 'a') as $letter) {
</example>
</para>
</refsect1>
+ <refsect1 role="notes">
+ &reftitle.notes;
+ <note>
+ <para>
+ Karakter dizisinin değerleri bir baytla sınırlıdır. Bir bayttan uzun değer
+ belirtilirse yalnızca ilk karakter kullanılır.
+ </para>
+ </note>
+ </refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
diff --git a/reference/array/functions/reset.xml b/reference/array/functions/reset.xml
index 417fc0db..59a4ca94 100644
--- a/reference/array/functions/reset.xml
+++ b/reference/array/functions/reset.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
+<!-- EN-Revision: cd943f94a013b74df8765ab8e1a620a916a64a85 Maintainer: nilgun Status: ready -->
<refentry xml:id="function.reset" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>reset</refname>
@@ -11,13 +11,14 @@
&reftitle.description;
<methodsynopsis>
<type>mixed</type><methodname>reset</methodname>
- <methodparam><type>array</type><parameter role="reference">dizi</parameter></methodparam>
+ <methodparam><type class="union"><type>array</type><type>object</type></type><parameter role="reference">dizi</parameter></methodparam>
</methodsynopsis>
<para>
<function>reset</function> işleve <parameter>dizi</parameter> dizisinin
dahili göstericisini ilk elemana konumlar ve ilk dizi elemanının değeri ile
döner.
</para>
+ &return.falseproblem;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
@@ -52,16 +53,16 @@
$dizi = array('bir adım', 'iki adım', 'üç adım', 'dörtadım');
// Öntanımlı olarak gösterici ilk elemandadır
-echo current($dizi) . "<br />\n"; // "bir adım"
+echo current($dizi) . "\n"; // "bir adım"
// İki adım atalım
next($dizi);
next($dizi);
-echo current($dizi) . "<br />\n"; // "üç adım"
+echo current($dizi) . "\n"; // "üç adım"
// Göstericiyi sıfırlayalım
reset($dizi);
-echo current($dizi) . "<br />\n"; // "bir adım"
+echo current($dizi) . "\n"; // "bir adım"
?>
]]>
@@ -69,6 +70,19 @@ echo current($dizi) . "<br />\n"; // "bir adım"
</example>
</para>
</refsect1>
+ <refsect1 role="notes">
+ &reftitle.notes;
+ <note>
+ <simpara>
+ İlk eleman değerinin <type>bool</type> &false; olduğu durum ile boş bir
+ diziden dönen değer arasında bir fark yoktur. &false; elemanlar içeren
+ bir dizinin ilk eleman değerini bilinçli olarak elde etmek için önce
+ <function>count</function> işlevinin dönüş değerine bakılmalı ya da
+ <function>reset</function> işlevini çağırdıktan sonra
+ <function>key</function> işlevinin &null; döndürmediği doğrulanmalıdır.
+ </simpara>
+ </note>
+ </refsect1>
<refsect1 role="seealso">
&reftitle.seealso;
<para>
@@ -78,6 +92,7 @@ echo current($dizi) . "<br />\n"; // "bir adım"
<member><function>end</function></member>
<member><function>next</function></member>
<member><function>prev</function></member>
+ <member><function>array_key_first</function></member>
</simplelist>
</para>
</refsect1>
diff --git a/reference/array/functions/shuffle.xml b/reference/array/functions/shuffle.xml
index cd70bc1b..306a0e3f 100644
--- a/reference/array/functions/shuffle.xml
+++ b/reference/array/functions/shuffle.xml
@@ -1,7 +1,8 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
-<refentry xml:id="function.shuffle" xmlns="http://docbook.org/ns/docbook">
+<!-- EN-Revision: 802fb7ce9fe7c5039fe83482079999e3ea148644 Maintainer: nilgun Status: ready -->
+<refentry xml:id="function.shuffle" xmlns="http://docbook.org/ns/docbook"
+ xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>shuffle</refname>
<refpurpose>Bir diziyi karar</refpurpose>
@@ -13,7 +14,8 @@
<methodparam><type>array</type><parameter role="reference">dizi</parameter></methodparam>
</methodsynopsis>
<para>
- Bu işlev belirtilen diziyi karar (elemanları rasgele sıralar).
+ Bu işlev belirtilen diziyi karar (elemanları rasgele sıralar). Kriptografi
+ amaçlarına uygun olmayan bir rasgele sayı üreteci kullanır.
</para>
</refsect1>
<refsect1 role="parameters">
@@ -49,7 +51,14 @@
</row>
</thead>
<tbody>
- &changelog.randomseed;
+ <row>
+ <entry>7.1.0</entry>
+ <entry>
+ Dahili rasgelelik algoritması olarak, libc rand işlevi yerine
+ <link xlink:href="&url.mersenne;">Mersenne Twister</link> rasgele
+ sayı üreteci kullanılacak şekilde değiştirildi
+ </entry>
+ </row>
</tbody>
</tgroup>
</informaltable>
@@ -82,6 +91,7 @@ foreach ($sayılar as $sayı) {
&reftitle.seealso;
<para>
<simplelist>
+ <member><function>array_rand</function></member>
<member>&seealso.array.sorting;</member>
</simplelist>
</para>
diff --git a/reference/array/functions/sort.xml b/reference/array/functions/sort.xml
index 87432322..7cd4aeaf 100644
--- a/reference/array/functions/sort.xml
+++ b/reference/array/functions/sort.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
+<!-- EN-Revision: 2550f62c6a8e60a690a462e9b6eb60e08abcc61f Maintainer: nilgun Status: ready -->
<refentry xml:id="function.sort" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<refnamediv>
<refname>sort</refname>
@@ -11,60 +11,19 @@
<methodsynopsis>
<type>bool</type><methodname>sort</methodname>
<methodparam><type>array</type><parameter role="reference">dizi</parameter></methodparam>
- <methodparam choice="opt"><type>int</type><parameter>seçenekler</parameter><initializer>SORT_REGULAR</initializer></methodparam>
+ <methodparam choice="opt"><type>int</type><parameter>seçenekler</parameter><initializer><constant>SORT_REGULAR</constant></initializer></methodparam>
</methodsynopsis>
<para>
Bu işlev bir diziyi sıralar. Sıralama işlemi bittiğinde dizinin elemanları
küçükten büyüğe doğru sıralanmış olur.
</para>
+ ¬e.sort-unstable;
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
- <varlistentry>
- <term><parameter>dizi</parameter></term>
- <listitem>
- <para>
- Sıralanacak dizi.
- </para>
- </listitem>
- </varlistentry>
- <varlistentry>
- <term><parameter>seçenekler</parameter></term>
- <listitem>
- <para>
- İsteğe bağlı <parameter>seçenekler</parameter> değiştirgesinde
- aşağıdaki değerler kullanılarak sıralama kuralı değiştirilebilir:
- </para>
- <para>
- Sıralama türü seçenekleri:
- <itemizedlist>
- <listitem>
- <simpara><constant>SORT_REGULAR</constant> - Elemanlar normal olarak
- sıralanır (öntanımlı)</simpara>
- </listitem>
- <listitem>
- <simpara><constant>SORT_NUMERIC</constant> - Elemanlar sayısal olarak
- sıralanır</simpara>
- </listitem>
- <listitem>
- <simpara><constant>SORT_STRING</constant> - Elemanlar dizgesel olarak
- sıralanır</simpara>
- </listitem>
- <listitem>
- <simpara><constant>SORT_LOCALE_STRING</constant> - Yerele göre
- dizgesel sıralama yapılır. PHP 4.4.0 ve 5.0.2'de eklendi. PHP 6
- öncesinde, <function>setlocale</function> işlevi ile değiştirilebilen
- sistem yereli kullanılıyordu. PHP 6'dan itibaren sistem yerelini
- değiştirmek için <function>i18n_loc_set_default</function> işlevini
- kullanmalısınız.
- </simpara>
- </listitem>
- </itemizedlist>
- </para>
- </listitem>
- </varlistentry>
+ &sort.flags.parameter;
</variablelist>
</para>
</refsect1>
@@ -106,6 +65,39 @@ fruits[3] = orange
<para>
Meyvalar abecesel olarak sıralanmıştır.
</para>
+ <para>
+ <example>
+ <title>- Harf büyüklüğüne duyarsız doğal sıralama kullanılan
+ <function>sort</function> örneği</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+
+$fruits = array(
+ "Orange1", "orange2", "Orange3", "orange20"
+);
+sort($fruits, SORT_NATURAL | SORT_FLAG_CASE);
+foreach ($fruits as $key => $val) {
+ echo "fruits[" . $key . "] = " . $val . "\n";
+}
+
+?>
+]]>
+ </programlisting>
+ &example.outputs;
+ <screen>
+<![CDATA[
+fruits[0] = Orange1
+fruits[1] = orange2
+fruits[2] = Orange3
+fruits[3] = orange20
+]]>
+ </screen>
+ </example>
+ </para>
+ <para>
+ Meyvalar <function>natcasesort</function> işlevi kullanılmış gibi sıralandı.
+ </para>
</refsect1>
<refsect1 role="notes">
&reftitle.notes;
@@ -114,13 +106,17 @@ fruits[3] = orange
<simpara>
Çoğu PHP sıralama işlevindeki gibi <function>sort</function> işlevinde de
<link xlink:href="&url.wiki.quicksort;">Quicksort</link> gerçeklenimi
- kullanılmıştır.
+ kullanılmıştır. Dayanak noktası olarak bölümün ortası seçilerek zaten
+ sıralanmış diziler için en uygun süre elde edilir. Ancak bu, uygulama ile
+ ilgili bir ayrıntı olup buna güvenilemez.
</simpara>
</note>
<warning>
<simpara>
Farklı türde değerler içeren dizileri sıralarken dikkatli olun;
- yoksa <function>sort</function> işlevi umulmadık sonuçlar üretebilir.
+ yoksa <function>sort</function> işlevi <constant>SORT_REGULAR</constant>
+ değerli <parameter>seçenekler</parameter> ile kullanılırsa umulmadık
+ sonuçlar üretebilir.
</simpara>
</warning>
</refsect1>
@@ -129,6 +125,7 @@ fruits[3] = orange
<para>
<simplelist>
<member><function>asort</function></member>
+ <member><function>rsort</function></member>
<member>&seealso.array.sorting;</member>
</simplelist>
</para>
diff --git a/reference/array/functions/usort.xml b/reference/array/functions/usort.xml
index 714c252b..e4d424a0 100644
--- a/reference/array/functions/usort.xml
+++ b/reference/array/functions/usort.xml
@@ -1,6 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: 96c9d88bad9a7d7d44bfb7f26c226df7ee9ddf26 Maintainer: nilgun Status: ready -->
+<!-- EN-Revision: cd943f94a013b74df8765ab8e1a620a916a64a85 Maintainer: nilgun Status: ready -->
<refentry xml:id="function.usort" xmlns="http://docbook.org/ns/docbook">
<refnamediv>
<refname>usort</refname>
@@ -12,7 +12,7 @@
<methodsynopsis>
<type>bool</type><methodname>usort</methodname>
<methodparam><type>array</type><parameter role="reference">array</parameter></methodparam>
- <methodparam><type>callback</type><parameter>karş_işlevi</parameter></methodparam>
+ <methodparam><type>callable</type><parameter>karş_işlevi</parameter></methodparam>
</methodsynopsis>
<para>
Bu işlev kullanıcı tarafından sağlanmış bir karşılaştırma işlevini
@@ -20,12 +20,7 @@
mevcut kuralların dışında bir kurala göre sıralamak isterseniz bu işlev çok
işe yarar.
</para>
- <note>
- <para>
- Karşılaştırma sırasında birbirinin eşi iki üye bulunursa aralarındaki
- sıralamanın nasıl olacağı belirsizdir.
- </para>
- </note>
+ ¬e.sort-unstable;
¬e.no-key-association;
</refsect1>
<refsect1 role="parameters">
@@ -44,14 +39,17 @@
<term><parameter>karş_işlevi</parameter></term>
<listitem>
<para>
- Karşılaştırma için geriçağırım işlevi.
- </para>
- <para>
- <parameter>karş_işlevi</parameter> dizi değerlerinin aktarılacağı iki
- değiştirge kabul etmelidir. Birinci değiştirgenin ikinciden büyük,
- küçük veya ona eşit olduğu durumlarda sırayla sıfırdan büyük, sıfırdan
- küçük bir değer veya sıfır döndürmelidir.
+ &return.callbacksort;
</para>
+ &callback.cmp;
+ <caution>
+ <para>
+ Karşılaştırma işlevinden <type>float</type> gibi <emphasis>tamsayı
+ olmayan</emphasis> değerlerin döndürülmesi, dahili bir çarpıtma ile bu
+ değerin <type>int</type> türüne dönüştürülmesine sebep olur. Örneğin,
+ 0.99 ve 0.1 gibi değerler tamsayı 0 değerine dönüştürülür.
+ </para>
+ </caution>
</listitem>
</varlistentry>
</variablelist>
@@ -63,35 +61,10 @@
&return.success;
</para>
</refsect1>
- <refsect1 role="changelog">
- &reftitle.changelog;
- <para>
- <informaltable>
- <tgroup cols="2">
- <thead>
- <row>
- <entry>&Version;</entry>
- <entry>&Description;</entry>
- </row>
- </thead>
- <tbody>
- <row>
- <entry>4.1.0</entry>
- <entry>
- Yeni sıralama algoritması devreye girdi.
- <parameter>karş_işlevi</parameter> karşılaştırıldıklarında eşit olan
- elemanların özgün sırasını korumuyor.
- </entry>
- </row>
- </tbody>
- </tgroup>
- </informaltable>
- </para>
- </refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
- <example>
+ <example xml:id="function.usort.examples.basic">
<title>- <function>usort</function> örneği</title>
<programlisting role="php">
<![CDATA[
@@ -132,7 +105,7 @@ foreach ($a as $anahtar => $değer) {
</para>
</note>
<para>
- <example>
+ <example xml:id="function.usort.examples.multi">
<title>- <function>usort</function> ve çok boyutlu dizi</title>
<programlisting role="php">
<![CDATA[
@@ -169,7 +142,7 @@ $meyvalar[2]: portakal
</example>
</para>
<para>
- <example>
+ <example xml:id="function.usort.examples.object">
<title>- Bir nesnenin üye yöntemini kullanan <function>usort</function>
örneği</title>
<programlisting role="php">
@@ -216,6 +189,40 @@ d
]]>
</screen>
</example>
+ <example xml:id="function.usort.examples.closure">
+ <title>- Çok boyutlu bir diziyi sıralamak için
+ <link linkend="functions.anonymous">anonim işlevler</link> kullanılan
+ <function>usort</function> örneği</title>
+ <programlisting role="php">
+<![CDATA[
+<?php
+$array[0] = array('key_a' => 'z', 'key_b' => 'c');
+$array[1] = array('key_a' => 'x', 'key_b' => 'b');
+$array[2] = array('key_a' => 'y', 'key_b' => 'a');
+
+function build_sorter($key) {
+ return function ($a, $b) use ($key) {
+ return strnatcmp($a[$key], $b[$key]);
+ };
+}
+
+usort($array, build_sorter('key_b'));
+
+foreach ($array as $item) {
+ echo $item['key_a'] . ', ' . $item['key_b'] . "\n";
+}
+?>
+]]>
+ </programlisting>
+ &example.outputs;
+ <screen>
+<![CDATA[
+y, a
+x, b
+z, c
+]]>
+ </screen>
+ </example>
</para>
</refsect1>
<refsect1 role="seealso">
diff --git a/reference/bc/book.xml b/reference/bc/book.xml
index 06bb826c..c7f4a50a 100644
--- a/reference/bc/book.xml
+++ b/reference/bc/book.xml
@@ -1,28 +1,33 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: d0f5b88a939b4060cd026bc5a07cc59fd1f68ab7 Maintainer: aydin Status: ready -->
-
+<!-- EN-Revision: 3e2bff7191ffdd60223e592d9e39fb281aac697b Maintainer: aydin Status: ready -->
+
<book xml:id="book.bc" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<?phpdoc extension-membership="bundled" ?>
<title>BCMath Keyfi Duyarlıklı Matematik</title>
<titleabbrev>BC Math</titleabbrev>
-
+
<!-- {{{ preface -->
<preface xml:id="intro.bc">
&reftitle.intro;
<para>
- Keyfi duyarlıklı matematik işlemleri için PHP ikilik hesap makinesi
- işlevleri sağlar. Hesap makinesi herhangi bir boyut ve tamlıkta sayılar
- <literal>2147483647</literal>'ye kadar (veya <literal>0x7FFFFFFF</literal>)
- desteklenir, yeterli bellek yoksa dizge olarak gösterilir.
+ Keyfi duyarlıklı matematik işlemleri için PHP, herhangi bir boyut ve
+ duyarlıktaki sayıları <literal>2147483647</literal>'ye kadar
+ (veya <literal>0x7FFFFFFF</literal>) destekleyen BCMath işlevlerini kullanır.
+ Yeterli bellek yoksa, sayılar dizge olarak gösterilir.
+ </para>
+ <para>
+ Geçerli (yani, iyi biçimli) BCMath sayıları
+ <literal>/^[+-]?[0]*[1-9]*[.]?[0-9]*$/</literal> düzenli ifadesi ile eşleşen
+ dizilerdir.
</para>
<caution>
<para>
- <type>string</type> türünde bir terim bekleyen bir BCMath işlevine
- <type>float</type> türünde değer aktarılması, PHP'nin <type>float</type>
- değerleri <type>string</type> türüne dönüştürme yolundan dolayı istenen
- etkiyi sağlamayabilir (<type>string</type> üstel gösterim içerebilir ama
- üstel gösterim BCMath tarafından desteklenmez, ayrıca ondalık ayracı
+ <type>string</type> türünde bir terim bekleyen bir BCMath işlevine
+ <type>float</type> türünde değer aktarılması, PHP'nin <type>float</type>
+ değerleri <type>string</type> türüne dönüştürme yolundan dolayı istenen
+ etkiyi sağlamayabilir (<type>string</type> üstel gösterim içerebilir ama
+ üstel gösterim BCMath tarafından desteklenmez, ayrıca ondalık ayracı
yerele bağımlıdır ama BCMath burada ondalık nokta bekler).
</para>
<informalexample>
@@ -33,7 +38,7 @@ $num1 = 0; // (string) 0 => '0'
$num2 = -0.000005; // (string) -0.000005 => '-5.05E-6'
echo bcadd($num1, $num2, 6); // => '0.000000'
-setlocale(LC_NUMERIC, 'de_DE'); // uses a decimal comma
+setlocale(LC_NUMERIC, 'de_DE'); // ondalık ayraç virgüldür
$num2 = 1.2; // (string) 1.2 => '1,2'
echo bcsub($num1, $num2, 1); // => '0.0'
?>
@@ -43,7 +48,7 @@ echo bcsub($num1, $num2, 1); // => '0.0'
</caution>
</preface>
<!-- }}} -->
-
+
&reference.bc.setup;
&reference.bc.constants;
&reference.bc.reference;
diff --git a/reference/bc/setup.xml b/reference/bc/setup.xml
index c1b2425d..517068f2 100644
--- a/reference/bc/setup.xml
+++ b/reference/bc/setup.xml
@@ -1,16 +1,13 @@
<?xml version="1.0" encoding="utf-8"?>
<!-- $Revision$ -->
-<!-- EN-Revision: af4410a7e15898c3dbe83d6ea38246745ed9c6fb Maintainer: aydin Status: ready -->
+<!-- EN-Revision: 508e255fff6c604c31d5617fe9ddf6d776a3b43d Maintainer: aydin Status: ready -->
<chapter xml:id="bc.setup" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
&reftitle.setup;
<!-- {{{ Requirements -->
<section xml:id="bc.requirements">
&reftitle.required;
- <para>
- PHP 4.0.4 sürümünden beri PHP libbcmath ile birlikte paketlenir. Bu eklenti
- için herhangi bir dış kütüphane kullanmanıza gerek yoktur.
- </para>
+ &no.requirement;
</section>
<!-- }}} -->