cvs: phpdoc /tr/features connection-handling.xml error-handling.xml persistent-connections.xml remote-files.xml
| From: | Serdar Soydemir | Date: | Mon, 10 Dec 2001 18:38:23 +0000 |
| Subject: | cvs: phpdoc /tr/features connection-handling.xml error-handling.xml persistent-connections.xml remote-files.xml | ||
| Groups: | php.doc | ||
| Request: | Send a blank email to phpdoc+get-969339609@lists.php.net to get a copy of this message | ||
tpug Mon Dec 10 13:38:23 2001 EDT
Modified files:
/phpdoc/tr/features connection-handling.xml error-handling.xml
persistent-connections.xml remote-files.xml
Log:
oops, turkish entities corrected - by Serdar
Index: phpdoc/tr/features/connection-handling.xml diff -u phpdoc/tr/features/connection-handling.xml:1.2 phpdoc/tr/features/connection-handling.xml:1.3 --- phpdoc/tr/features/connection-handling.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/connection-handling.xml Mon Dec 10 13:38:22 2001 @@ -1,78 +1,78 @@ <?xml version="1.0" encoding="iso-8859-9"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.connection-handling"> - <!-- dirge: handling => iþleme --> - <title>Baðlantý Ýþleme</title> + <!-- dirge: handling => işleme --> + <title>Bağlantı İşleme</title> <note> - <para>Burada yazanlar 3.0.7 ve sonrasý sürümler için geçerlidir.</para> + <para>Burada yazanlar 3.0.7 ve sonrası sürümler için geçerlidir.</para> </note> <para> - PHP'nin içinde baðlantý durumu saklanýr. Olasý durumlar 3 tanedir: + PHP'nin içinde bağlantı durumu saklanır. Olası durumlar 3 tanedir: <itemizedlist> <listitem><simpara>0 - NORMAL (normal)</simpara></listitem> - <listitem><simpara>1 - ABORTED (iptal edilmiþ)</simpara></listitem> - <listitem><simpara>2 - TIMEOUT (zaman aþýmýna uðramýþ)</simpara></listitem> + <listitem><simpara>1 - ABORTED (iptal edilmiş)</simpara></listitem> + <listitem><simpara>2 - TIMEOUT (zaman aşımına uğramış)</simpara></listitem> </itemizedlist> </para> <simpara> - PHP betiði normal olarak çalýþýrken NORMAL durumu aktiftir. Eðer alýcý - taraf baðlantýyý keserse ABORTED durum anahtarý aktifleþtirilir. Alýcý - tarafýn baðlantýyý kesmesi genellikle uzaktaki kullanýcýnýn STOP düðmesine - basmasýndan kaynaklanýr. Eðer PHP'ye bildirilen zaman sýnýrýna (bkz. - <function>set_time_limit</function>) ulaþýlýrsa, TIMOUT durum anahtarý - aktifleþtirilir. + PHP betiği normal olarak çalışırken NORMAL durumu aktiftir. Eğer alıcı + taraf bağlantıyı keserse ABORTED durum anahtarı aktifleştirilir. Alıcı + tarafın bağlantıyı kesmesi genellikle uzaktaki kullanıcının STOP düğmesine + basmasından kaynaklanır. Eğer PHP'ye bildirilen zaman sınırına (bkz. + <function>set_time_limit</function>) ulaşılırsa, TIMOUT durum anahtarı + aktifleştirilir. </simpara> <simpara> <!-- dirge: return => döndürmek --> <!-- dirge: directive => direktif --> - Alýcýnýn baðlantýyý kesmesi durumunda PHP betiðinin çalýþmasýnýn durdurulup - durdurulmayacaðýný seçebilirsiniz. Bazý durumlarda karþý taraftaki internet - gezgini yolladýðýnýz çýktýyý almýyor olsa bile PHP betiðinin normal olarak - sonlanmasý kullanýþlý olabilir. Ancak PHP'nin öntanýmlý davranýþý karþý - taraftaki internet gezgini baðlantýyý kestiðinde betiði sonlandýrmaktýr. - Bu davranýþ ignore_user_abort php.ini direktifiyle ayarlanabileceði gibi - bunun Apache .conf karþýlýðý olan php3_ignore_user_abort direktifiyle veya + Alıcının bağlantıyı kesmesi durumunda PHP betiğinin çalışmasının durdurulup + durdurulmayacağını seçebilirsiniz. Bazı durumlarda karşı taraftaki internet + gezgini yolladığınız çıktıyı almıyor olsa bile PHP betiğinin normal olarak + sonlanması kullanışlı olabilir. Ancak PHP'nin öntanımlı davranışı karşı + taraftaki internet gezgini bağlantıyı kestiğinde betiği sonlandırmaktır. + Bu davranış ignore_user_abort php.ini direktifiyle ayarlanabileceği gibi + bunun Apache .conf karşılığı olan php3_ignore_user_abort direktifiyle veya <function>ignore_user_abort</function> fonksiyonuyla da ayarlanabilir. Tek istisna <function>register_shutdown_function</function> fonksiyonu ile - bir kapanýþ fonksiyonu tanýmlamanýzdýr. Tanýmlý bir kapanýþ fonkiyonu - varken, betiðiniz çýktý yollamaya çalýþtýðýnda PHP alýcýnýn STOP düðmesine - bastýðýný algýlayacak ve tanýmladýðýnýz fonksiyonu çaðýracaktýr. Bu kapanýþ - fonksiyonu ayrýca betiðiniz normal olarak sonlandýðýnda da çaðrýlacaðý - için, sadece baðlantýnýn kesilmesi durumunda yapýlmasýný istediðiniz iþler + bir kapanış fonksiyonu tanımlamanızdır. Tanımlı bir kapanış fonkiyonu + varken, betiğiniz çıktı yollamaya çalıştığında PHP alıcının STOP düğmesine + bastığını algılayacak ve tanımladığınız fonksiyonu çağıracaktır. Bu kapanış + fonksiyonu ayrıca betiğiniz normal olarak sonlandığında da çağrılacağı + için, sadece bağlantının kesilmesi durumunda yapılmasını istediğiniz işler varsa <function>connection_aborted</function> fonksiyonunu - kullanabilirsiniz. Bu fonksiyon eðer baðlantý kesilmiþse &true; deðerini + kullanabilirsiniz. Bu fonksiyon eğer bağlantı kesilmişse &true; değerini döndürecektir. </simpara> <simpara> - Betiðiniz ayrýca yerleþik betik süre-ölçeri tarafýndan da - sonlandýrýlabilir. Öntanýmlý zaman 30 saniyedir. Bu deðer - max_execution_time php.ini direktifi veya bunun Apache .conf karþýlýðý olan - php3_max_execution_time direktifi ile ayarlanabileceði gibi + Betiğiniz ayrıca yerleşik betik süre-ölçeri tarafından da + sonlandırılabilir. Öntanımlı zaman 30 saniyedir. Bu değer + max_execution_time php.ini direktifi veya bunun Apache .conf karşılığı olan + php3_max_execution_time direktifi ile ayarlanabileceği gibi <function>set_time_limit</function> fonksiyonuyla da ayarlanabilir. - Belirlenen azami sürenin dolmasý durumunda betik sonlandýrýlacak, ve - yukarýdaki baðlantý kesilmesi durumunda olduðu gibi, varsa, tanýmlanmýþ - kapanýþ fonksiyonu çaðrýlacaktýr. Bu kapanýþ fonksiyonunun içinde, - çaðrýlmasýnýn sebebinin süre dolmasý olup olmadýðýný öðrenmek isterseniz + Belirlenen azami sürenin dolması durumunda betik sonlandırılacak, ve + yukarıdaki bağlantı kesilmesi durumunda olduğu gibi, varsa, tanımlanmış + kapanış fonksiyonu çağrılacaktır. Bu kapanış fonksiyonunun içinde, + çağrılmasının sebebinin süre dolması olup olmadığını öğrenmek isterseniz <function>connection_timeout</function> fonksiyonunu kullanabilirsiniz. Bu - fonksiyon sürenin dolmuþ olmasý durumunda &true; deðerini döndürecektir. + fonksiyon sürenin dolmuş olması durumunda &true; değerini döndürecektir. </simpara> <simpara> - Dikkat edilmesi gereken bir nokta hem ABORTED hem de TIMEOUT durumlarýnýn - ayný anda aktif olabileceðidir. Bu, PHP'ye karþý tarafýn baðlantýyý - sonlandýrmasýný gözardý etmesini söylerseniz mümkün olur. PHP'nin - baðlantýnýn kapandýðýný anlamasýna raðmen betik çalýþmaya devam edecektir. - Süre sýnýrý aþýldýðýnda betik sonlandýrýlýr ve, varsa, kapanýþ fonksiyonu - çaðrýlýr. Bu noktada <function>connection_timeout</function> ve - <function>connection_aborted</function> fonksiyonlarý &true; deðerini - döndürür. Ýki durumu ayný anda <function>connection_status</function> - fonksiyonu ile kontrol edebilirsiniz. Bu fonksiyon aktif durumlarý içeren - bit alanýný döndürür. Örneðin, iki durum da aktifse geriye dönüþ deðeri + Dikkat edilmesi gereken bir nokta hem ABORTED hem de TIMEOUT durumlarının + aynı anda aktif olabileceğidir. Bu, PHP'ye karşı tarafın bağlantıyı + sonlandırmasını gözardı etmesini söylerseniz mümkün olur. PHP'nin + bağlantının kapandığını anlamasına rağmen betik çalışmaya devam edecektir. + Süre sınırı aşıldığında betik sonlandırılır ve, varsa, kapanış fonksiyonu + çağrılır. Bu noktada <function>connection_timeout</function> ve + <function>connection_aborted</function> fonksiyonları &true; değerini + döndürür. İki durumu aynı anda <function>connection_status</function> + fonksiyonu ile kontrol edebilirsiniz. Bu fonksiyon aktif durumları içeren + bit alanını döndürür. Örneğin, iki durum da aktifse geriye dönüş değeri olarak 3'ü verecektir. </simpara> </chapter> Index: phpdoc/tr/features/error-handling.xml diff -u phpdoc/tr/features/error-handling.xml:1.2 phpdoc/tr/features/error-handling.xml:1.3 --- phpdoc/tr/features/error-handling.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/error-handling.xml Mon Dec 10 13:38:22 2001 @@ -1,19 +1,19 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.error-handling"> - <title>Hata Ýþlemleri</title> + <title>Hata İşlemleri</title> <para> - PHP'de pek çok uyarý çeþidi vardýr. Bunlar: + PHP'de pek çok uyarı çeşidi vardır. Bunlar: <table> - <title>PHP uyarý çeþitleri</title> + <title>PHP uyarı çeşitleri</title> <tgroup cols="4"> <thead> <row> - <entry>Deðer</entry> + <entry>Değer</entry> <entry>Sabit</entry> - <entry>Taným</entry> + <entry>Tanım</entry> <entry>Not</entry> </row> </thead> @@ -21,40 +21,40 @@ <row> <entry>1</entry> <entry>E_ERROR</entry> - <entry>hayati çalýþma hatalarý</entry> + <entry>hayati çalışma hataları</entry> <entry></entry> </row> <row> <entry>2</entry> <entry>E_WARNING</entry> - <entry>çalýþma uyarýlarý (hayati olmayan hatalar)</entry> + <entry>çalışma uyarıları (hayati olmayan hatalar)</entry> <entry></entry> </row> <row> <entry>4</entry> <entry>E_PARSE</entry> - <entry>derleme sýrasýnda ayrýþtýrma hatalarý</entry> + <entry>derleme sırasında ayrıştırma hataları</entry> <entry></entry> </row> <row> <entry>8</entry> <entry>E_NOTICE </entry> <entry> - çalýþma sýrasýndaki bildirimler (uyarýlardan daha az önemli) + çalışma sırasındaki bildirimler (uyarılardan daha az önemli) </entry> <entry></entry> </row> <row> <entry>16</entry> <entry>E_CORE_ERROR</entry> - <entry>PHP'nin iç yapýsýyla ilgili, baþlatýlmasýný engelleyen hayati hatalar</entry> + <entry>PHP'nin iç yapısıyla ilgili, başlatılmasını engelleyen hayati hatalar</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>32</entry> <entry>E_CORE_WARNING</entry> <entry> - PHP'nin iç yapýsýyla ilgili, baþlatýlmasý ile ilgili uyarýlar (hayati olmayan + PHP'nin iç yapısıyla ilgili, başlatılması ile ilgili uyarılar (hayati olmayan hatalar) </entry> <entry>sadece PHP 4</entry> @@ -62,37 +62,37 @@ <row> <entry>64</entry> <entry>E_COMPILE_ERROR</entry> - <entry>hayati derleme hatalarý</entry> + <entry>hayati derleme hataları</entry> <entry>Sadece PHP 4</entry> </row> <row> <entry>128</entry> <entry>E_COMPILE_WARNING</entry> - <entry>derleme sýrasýndaki uyarýlar (hayati olmayan hatalar)</entry> + <entry>derleme sırasındaki uyarılar (hayati olmayan hatalar)</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>256</entry> <entry>E_USER_ERROR</entry> - <entry>kullanýcýnýn yarattýðý hata mesajý</entry> + <entry>kullanıcının yarattığı hata mesajı</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>512</entry> <entry>E_USER_WARNING</entry> - <entry>kullanýcýnýn yarattýðý uyarý mesajý</entry> + <entry>kullanıcının yarattığı uyarı mesajı</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>1024</entry> <entry>E_USER_NOTICE </entry> - <entry>kullanýcýnýn yarattýðý bildiri mesajý</entry> + <entry>kullanıcının yarattığı bildiri mesajı</entry> <entry>sadece PHP 4</entry> </row> <row> <entry></entry> <entry>E_ALL</entry> - <entry>desteklendikleri sürece, yukarýdakilerin hepsi</entry> + <entry>desteklendikleri sürece, yukarıdakilerin hepsi</entry> <entry></entry> </row> </tbody> @@ -101,82 +101,82 @@ </para> <para> - Yukarýdaki deðerler (sayýsal veya sembolik) hangi hatalarýn bildirileceðini - belirleyen bit maskesini oluþtururken kullanýlýr. Bu deðerleri - birleþtirmeyi veya bazýlarýný maskelemeyi - <link linkend="language.operators.bitwise">bit-tabanlý iþlemler</link> ile + Yukarıdaki değerler (sayısal veya sembolik) hangi hataların bildirileceğini + belirleyen bit maskesini oluştururken kullanılır. Bu değerleri + birleştirmeyi veya bazılarını maskelemeyi + <link linkend="language.operators.bitwise">bit-tabanlı işlemler</link> ile yapabilirsiniz. <filename>php.ini</filename> içinde sadece '|', '~', '!' ve - '&' iþlemlerinin anlaþýlacaðýna, ve <filename>php3.ini</filename> - içinde hiçbirinin anlaþýlmayacaðýna dikkat edin. + '&' işlemlerinin anlaşılacağına, ve <filename>php3.ini</filename> + içinde hiçbirinin anlaşılmayacağına dikkat edin. </para> <para> - PHP 4'te öntanýmlý <link - linkend="ini.error-reporting">error_reporting</link> deðeri <literal>E_ALL - & ~E_NOTICE</literal>'dir ve anlamý E-NOTICE-seviyesi dýþýndaki tüm - hatalarýn ve uyarýlarýn bildirilmesidir. PHP 3'de öntanýmlý ayar - <literal>(E_ERROR | E_WARNING | E_PARSE)</literal>'dýr ve anlamý öncekiyle - aynýdýr. Fakat dikkat edin ki, PHP 3'ün <filename>php3.ini</filename> - dosyasýnda sabitler desteklenmediðinden <link - linkend="ini.error-reporting">error_reporting</link> ayarý sayýsal olmak - durumundadýr; az önce belirtilen deðer de <literal>7</literal>'ye denk + PHP 4'te öntanımlı <link + linkend="ini.error-reporting">error_reporting</link> değeri <literal>E_ALL + & ~E_NOTICE</literal>'dir ve anlamı E-NOTICE-seviyesi dışındaki tüm + hataların ve uyarıların bildirilmesidir. PHP 3'de öntanımlı ayar + <literal>(E_ERROR | E_WARNING | E_PARSE)</literal>'dır ve anlamı öncekiyle + aynıdır. Fakat dikkat edin ki, PHP 3'ün <filename>php3.ini</filename> + dosyasında sabitler desteklenmediğinden <link + linkend="ini.error-reporting">error_reporting</link> ayarı sayısal olmak + durumundadır; az önce belirtilen değer de <literal>7</literal>'ye denk gelir. </para> <para> - Baþlangýç deðeri ini dosyasýnda <link + Başlangıç değeri ini dosyasında <link linkend="ini.error-reporting">error_reporting</link> direktifiyle, - Apache'nizin <filename>httpd.conf</filename> dosyasýnda php_error_reporting - (PHP 3 için php3_error_reporting) direktifiyle, ve son olarak çalýþma - esnasýnda betik içinden <function>error_reporting</function> fonksiyonuyla + Apache'nizin <filename>httpd.conf</filename> dosyasında php_error_reporting + (PHP 3 için php3_error_reporting) direktifiyle, ve son olarak çalışma + esnasında betik içinden <function>error_reporting</function> fonksiyonuyla belirlenebilir. </para> <warning> <para> - Sunucularýnýzý veya kodlarýnýzý PHP 3'ten PHP 4'e güncellerken bu ayarlarý - ve <function>error_reporting</function> fonksiyonu çaðrýmlarýný kontrol - etmelisiniz, yoksa istemeyerek yeni hata çeþitlerinin bildirimlerini - kapatabilirsiniz, özellikle E_COMPILE_ERROR'u. Bu, hatanýn ne ve nerede - olduðuna dair hiç bir bilgi býrakmadan betiklerinizin tamamiyle boþ + Sunucularınızı veya kodlarınızı PHP 3'ten PHP 4'e güncellerken bu ayarları + ve <function>error_reporting</function> fonksiyonu çağrımlarını kontrol + etmelisiniz, yoksa istemeyerek yeni hata çeşitlerinin bildirimlerini + kapatabilirsiniz, özellikle E_COMPILE_ERROR'u. Bu, hatanın ne ve nerede + olduğuna dair hiç bir bilgi bırakmadan betiklerinizin tamamiyle boş sayfalar üretmesine yolaçabilir. </para> </warning> <para> Tüm <link linkend="language.expressions">PHP ifadeleri</link> @ ön-ekiyle - çaðrýlabilir. Bu ön-ek, o ifade için hata bildirimini kapatacaktýr. Eðer - böyle bir ifade sýrasýnda hata oluþursa, ve <link - linkend="ini.track-errors">track_errors</link> özelliði aktifse, hata - mesajýný <literal>$php_errormsg</literal> genel deðiþkeninde + çağrılabilir. Bu ön-ek, o ifade için hata bildirimini kapatacaktır. Eğer + böyle bir ifade sırasında hata oluşursa, ve <link + linkend="ini.track-errors">track_errors</link> özelliği aktifse, hata + mesajını <literal>$php_errormsg</literal> genel değişkeninde bulabilirsiniz. </para> <note> <para> <link linkend="language.operators.errorcontrol">@ hata-kontrol - iþlemi</link> ön-eki, ayrýþtýrma hatalarýný kapatmayacaktýr. + işlemi</link> ön-eki, ayrıştırma hatalarını kapatmayacaktır. </para> </note> <warning> <para> - Þu an için <link linkend="language.operators.errorcontrol">@ - hata-kontrol iþlemi</link> ön-eki betik sonlandýrýlmasýna yol açacak - kritik hatalarýn bile gösterilmesini engelleyecektir. Diðer þeylerin - dýþýnda, bu demektir ki <link + Şu an için <link linkend="language.operators.errorcontrol">@ + hata-kontrol işlemi</link> ön-eki betik sonlandırılmasına yol açacak + kritik hataların bile gösterilmesini engelleyecektir. Diğer şeylerin + dışında, bu demektir ki <link linkend="language.operators.errorcontrol">@</link> ön-ekini belli - fonksiyonlardan gelecek hatalarý bastýrmak için kullanýrsanýz, ve bu - fonksiyonlar tanýmlý deðilse, betik nedeni belirtilmeden - sonlandýrýlacaktýr. + fonksiyonlardan gelecek hataları bastırmak için kullanırsanız, ve bu + fonksiyonlar tanımlı değilse, betik nedeni belirtilmeden + sonlandırılacaktır. </para> </warning> <para> - Aþaðýda PHP'deki hata kontrolü iþlemlerinin kullanýmýna iliþkin bir örnek - bulacaksýnýz. Burada bilgileri XML formatýnda bir günlükte saklayan ve - programcýya kritik hatalarda e-mail yollayan bir hata iþleme fonksiyonu tanýmlýyoruz. + Aşağıda PHP'deki hata kontrolü işlemlerinin kullanımına ilişkin bir örnek + bulacaksınız. Burada bilgileri XML formatında bir günlükte saklayan ve + programcıya kritik hatalarda e-mail yollayan bir hata işleme fonksiyonu tanımlıyoruz. <example> - <title>Betik için hata iþlemenin kullanýmý</title> + <title>Betik için hata işlemenin kullanımı</title> <programlisting role="php"> <![CDATA[ <?php @@ -281,12 +281,12 @@ ]]> </programlisting> </example> - Bu <link linkend="ref.errorfunc">Hata Ýþleme ve Günlük fonksiyonlarý</link> - hakkýnda basit bir örnek. + Bu <link linkend="ref.errorfunc">Hata İşleme ve Günlük fonksiyonları</link> + hakkında basit bir örnek. </para> <para> - Ayrýca bkz. <function>error_reporting</function>, + Ayrıca bkz. <function>error_reporting</function>, <function>error_log</function>, <function>set_error_handler</function>, <function>restore_error_handler</function>, Index: phpdoc/tr/features/persistent-connections.xml diff -u phpdoc/tr/features/persistent-connections.xml:1.2 phpdoc/tr/features/persistent-connections.xml:1.3 --- phpdoc/tr/features/persistent-connections.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/persistent-connections.xml Mon Dec 10 13:38:22 2001 @@ -1,120 +1,120 @@ <?xml version="1.0" encoding="iso-8859-9"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.persistent-connections"> - <title>Kalýcý Veritabaný Baðlantýlarý</title> + <title>Kalıcı Veritabanı Bağlantıları</title> <simpara> - Kalýcý baðlantýlar, betiðiniz sonlandýðýnda kapatýlmayan SQL baðlantýlarýna - denir. Kalýcý bir baðlantý istendiðinde, PHP daha önceden tamamen ayný - özelliklerde baþka bir kalýcý baðlantý açýlýp açýlmadýðýna bakar (daha - önceden kalan) - ve eðer varsa, onu kullanýr. Eðer yoksa, yeni baðlantý - kurar. 'Tamamen ayný' baðlantýlar, ayný sunucuya, ayný kullanýcý ismi ve - (gerekliyse) þifreyle açýlmýþ baðlantýlardýr. + Kalıcı bağlantılar, betiğiniz sonlandığında kapatılmayan SQL bağlantılarına + denir. Kalıcı bir bağlantı istendiğinde, PHP daha önceden tamamen aynı + özelliklerde başka bir kalıcı bağlantı açılıp açılmadığına bakar (daha + önceden kalan) - ve eğer varsa, onu kullanır. Eğer yoksa, yeni bağlantı + kurar. 'Tamamen aynı' bağlantılar, aynı sunucuya, aynı kullanıcı ismi ve + (gerekliyse) şifreyle açılmış bağlantılardır. </simpara> <simpara> - HTTP sunucularýnýn çalýþma mantýðýna aþina olmayanlar, kalýcý baðlantýlarý - gerçekte olmadýklarý þeyler sanabilirler. Özellikle, ayný SQL baðlantýsý - üzerinde 'kullanýcý oturumlarý' <emphasis>açmazlar</emphasis>, - transaction'larý daha etkili bir þekilde yapmanýzý - <emphasis>saðlamazlar</emphasis> ve baþka pek çok þeyi gerçekleþtirmezler. - Konu hakkýnda daha açýk olmak gerekirse, kalýcý baðlantýlar size kardeþleri - kalýcý olmayan baðlantýlarýn sunmadýðý hiç bir ek özellik + HTTP sunucularının çalışma mantığına aşina olmayanlar, kalıcı bağlantıları + gerçekte olmadıkları şeyler sanabilirler. Özellikle, aynı SQL bağlantısı + üzerinde 'kullanıcı oturumları' <emphasis>açmazlar</emphasis>, + transaction'ları daha etkili bir şekilde yapmanızı + <emphasis>sağlamazlar</emphasis> ve başka pek çok şeyi gerçekleştirmezler. + Konu hakkında daha açık olmak gerekirse, kalıcı bağlantılar size kardeşleri + kalıcı olmayan bağlantıların sunmadığı hiç bir ek özellik <emphasis>sunmazlar</emphasis>. </simpara> <simpara> Neden? </simpara> <simpara> - Bu daha çok HTTP sunucularýnýn çalýþma mantýðýyla alakalý. Sunucunun - PHP'yi kullanarak web sayfalarý oluþturmasýnýn üç yöntemi var. + Bu daha çok HTTP sunucularının çalışma mantığıyla alakalı. Sunucunun + PHP'yi kullanarak web sayfaları oluşturmasının üç yöntemi var. </simpara> <simpara> - <!-- dirge: wrapper => sargý --> - Ýlk yöntem PHP'yi CGI "sargýsý" olarak kullanmak. Bu þekilde çalýþtýðýnda, - sunucuya gelen her sayfa isteði için ayrý bir PHP yorumlayýcýsý yaratýlýr - ve yokedilir (PHP sayfalarý için). Ýþlemler sonunda yokedildikleri için, - yarattýklarý her kaynak da (SQL sunucusuna baðlantýlar gibi) onlarla - birlikte yokolur. Bu durumda, kalýcý baðlantýlar kurmayý denemekle elinize - hiçbirþey geçmez -- basitçe, kalýcý olamazlar. + <!-- dirge: wrapper => sargı --> + İlk yöntem PHP'yi CGI "sargısı" olarak kullanmak. Bu şekilde çalıştığında, + sunucuya gelen her sayfa isteği için ayrı bir PHP yorumlayıcısı yaratılır + ve yokedilir (PHP sayfaları için). İşlemler sonunda yokedildikleri için, + yarattıkları her kaynak da (SQL sunucusuna bağlantılar gibi) onlarla + birlikte yokolur. Bu durumda, kalıcı bağlantılar kurmayı denemekle elinize + hiçbirşey geçmez -- basitçe, kalıcı olamazlar. </simpara> <simpara> - <!-- dirge: multiprocess => çok iþlemli --> - Ýkinci, ve en popüler, yöntem PHP'yi çok iþlemli (multiprocess) bir - sunucuda modül olarak kullanmak, þu an sadece Apache'de olduðu gibi. Çok - iþlemli bir sunucu genellikle bir ana iþlemden (parent) ve onun kontrolündeki - gerçekte iþlemleri yapan çocuk iþlemlerden (children) oluþur. Ne zaman bir - alýcýdan istek gelse, istek o anda baþka bir isteðe cevap vermeyen bir çocuk - iþleme devredilir. Bu demektir ki, ayný alýcý ikinci bir istek yolladýðýnda, - baþka bir çocuk iþlem tarafýndan karþýlanabilir. Kalýcý baðlantýlarýn - sizin için burada yaptýðý iþ, her çocuk iþlemin sadece ilk seferde SQL - sunucusuna baðlanmasýdýr. Baþka bir sayfanýn ayný baðlantýya ihtiyaç duymasý - durumunda önceden kurulmuþ baðlantý kullanýlýr. - </simpara> - <simpara> - <!-- dirge: thread => iþ parçacýðý --> - Son yöntem PHP'yi çok iþ parçacýklý (multithreaded) sunucularda eklenti - olarak kullanmak. Þu anda PHP 4'ün Netscape FastTrack (iPlanet), Microsoft - Internet Information Server (IIS), ve O'Reilly Website Pro gibi çok iþ - parçacýklý sunucularda çalýþmasýný saðlayan ISAPI, WSAIP, ve NSAPI - (Windows'ta) için desteði var. Bu çalýþma þekli az önce anlatýlan çok - iþlemli modelle ayný. SAPI desteðinin PHP 3'te olmadýðýna dikkat edin. + <!-- dirge: multiprocess => çok işlemli --> + İkinci, ve en popüler, yöntem PHP'yi çok işlemli (multiprocess) bir + sunucuda modül olarak kullanmak, şu an sadece Apache'de olduğu gibi. Çok + işlemli bir sunucu genellikle bir ana işlemden (parent) ve onun kontrolündeki + gerçekte işlemleri yapan çocuk işlemlerden (children) oluşur. Ne zaman bir + alıcıdan istek gelse, istek o anda başka bir isteğe cevap vermeyen bir çocuk + işleme devredilir. Bu demektir ki, aynı alıcı ikinci bir istek yolladığında, + başka bir çocuk işlem tarafından karşılanabilir. Kalıcı bağlantıların + sizin için burada yaptığı iş, her çocuk işlemin sadece ilk seferde SQL + sunucusuna bağlanmasıdır. Başka bir sayfanın aynı bağlantıya ihtiyaç duyması + durumunda önceden kurulmuş bağlantı kullanılır. + </simpara> + <simpara> + <!-- dirge: thread => iş parçacığı --> + Son yöntem PHP'yi çok iş parçacıklı (multithreaded) sunucularda eklenti + olarak kullanmak. Şu anda PHP 4'ün Netscape FastTrack (iPlanet), Microsoft + Internet Information Server (IIS), ve O'Reilly Website Pro gibi çok iş + parçacıklı sunucularda çalışmasını sağlayan ISAPI, WSAIP, ve NSAPI + (Windows'ta) için desteği var. Bu çalışma şekli az önce anlatılan çok + işlemli modelle aynı. SAPI desteğinin PHP 3'te olmadığına dikkat edin. </simpara> <simpara> - Eðer kalýcý baðlantýlarýn ek özellikleri yoksa, neye yararlar? + Eğer kalıcı bağlantıların ek özellikleri yoksa, neye yararlar? </simpara> <simpara> <!-- dige: efficiency => etkinlik --> - Buradaki cevap oldukça basit -- etkinlik. Kalýcý baðlantýlar, SQL - sunucunuza yeni baðlantý açmak performans açýsýndan hesaplý deðilse - çok iþe yararlar. Performans hesaplýlýðý pek çok þeye baðlýdýr. Örneðin, ne - tür bir veritabaný olduðu, HTTP sunucusuyla ayný bilgisayarda olup - olmayýþý, SQL sunucusunun çalýþtýðý bilgisayarýn iþlem yoðunluðu ve - benzeri. Sonuç þu ki, yeni baðlantý performansý düþükse, kalýcý baðlantýlar - iþe yarar. Her çocuk iþlemin her seferinde yeni baðlantý açmasý yerine - hayatý boyunca sadece bir kere baðlantý yapmasýný ve sürekli onu kullanmasýný - saðlarlar. Bu demektir ki, kalýcý baðlantý açan her çocuk iþlemin kendisine - ait SQL sunucusuna kalýcý bir baðlantýsý olacaktýr. Örneðin, 20 tane - kalýcý baðlantý açan betik çalýþtýrmýþ farklý çocuk iþlem varsa, SQL - sunucusuna, her çocuk iþlemden bir tane olmak üzere, 20 tane baðlantý - olacaktýr. - </simpara> - <simpara> - Ancak dikkat edin ki, SQL sunucusunun baðlantý limiti kalýcý baðlantýlarla - aþýldýðýnda bunun bir takým götürüleri olacaktýr. Eðer veritabaný - sunucunuz ayni anda 16 baðlantýya izin veriyorsa, ve yoðun bir çalýþma - anýnda 17 çocuk iþlem kalýcý baðlantý açmaya kalkarsa, bunlardan biri - baðlantýyý açamaz. Eðer betiklerinizde baðlantýlarýn kapanabilmesine olanak - tanýmayan hatalar varsa (kýsýr döngüler gibi), 32 baðlantýya izin veren bir - veritabaný sunucusu çok çabuk bir þekilde kullaným dýþý olur. Boþ duran - (idle) baðlantýlarla nasýl ilgileneceðiniz konusunda veritabanýnýzýn - dökümanlarýna baþvurun. + Buradaki cevap oldukça basit -- etkinlik. Kalıcı bağlantılar, SQL + sunucunuza yeni bağlantı açmak performans açısından hesaplı değilse + çok işe yararlar. Performans hesaplılığı pek çok şeye bağlıdır. Örneğin, ne + tür bir veritabanı olduğu, HTTP sunucusuyla aynı bilgisayarda olup + olmayışı, SQL sunucusunun çalıştığı bilgisayarın işlem yoğunluğu ve + benzeri. Sonuç şu ki, yeni bağlantı performansı düşükse, kalıcı bağlantılar + işe yarar. Her çocuk işlemin her seferinde yeni bağlantı açması yerine + hayatı boyunca sadece bir kere bağlantı yapmasını ve sürekli onu kullanmasını + sağlarlar. Bu demektir ki, kalıcı bağlantı açan her çocuk işlemin kendisine + ait SQL sunucusuna kalıcı bir bağlantısı olacaktır. Örneğin, 20 tane + kalıcı bağlantı açan betik çalıştırmış farklı çocuk işlem varsa, SQL + sunucusuna, her çocuk işlemden bir tane olmak üzere, 20 tane bağlantı + olacaktır. + </simpara> + <simpara> + Ancak dikkat edin ki, SQL sunucusunun bağlantı limiti kalıcı bağlantılarla + aşıldığında bunun bir takım götürüleri olacaktır. Eğer veritabanı + sunucunuz ayni anda 16 bağlantıya izin veriyorsa, ve yoğun bir çalışma + anında 17 çocuk işlem kalıcı bağlantı açmaya kalkarsa, bunlardan biri + bağlantıyı açamaz. Eğer betiklerinizde bağlantıların kapanabilmesine olanak + tanımayan hatalar varsa (kısır döngüler gibi), 32 bağlantıya izin veren bir + veritabanı sunucusu çok çabuk bir şekilde kullanım dışı olur. Boş duran + (idle) bağlantılarla nasıl ilgileneceğiniz konusunda veritabanınızın + dökümanlarına başvurun. </simpara> <warning> <simpara> <!-- dirge: register => kaydetmek --> - Kalýcý baðlantý kullanýrken akýlda tutulmasý gereken birkaç ek götürü daha - var. Örneðin kalýcý bir baðlantý üzerinden bir tablo kitlendiyse (LOCK), - ve betik herhangi bir sebepten dolayý kilidi kaldýramýyorsa, ardýsýra gelen - ve ayný baðlantýyý kullanacak betikler süresiz olarak bloke olacak, ve - sizin ya HTTP sunucusunu ya da veritabaný sunucusunu baþtan çalýþtýrmanýz - gerekecektir. Baþka bir götürü transaction kullanýrken oluþabilir. Bir - transaction bloðu, betiðin çalýþma süresi bloðun ömründen kisaysa, bir - sonraki betiðe taþýnacaktýr. Ýki durumda da + Kalıcı bağlantı kullanırken akılda tutulması gereken birkaç ek götürü daha + var. Örneğin kalıcı bir bağlantı üzerinden bir tablo kitlendiyse (LOCK), + ve betik herhangi bir sebepten dolayı kilidi kaldıramıyorsa, ardısıra gelen + ve aynı bağlantıyı kullanacak betikler süresiz olarak bloke olacak, ve + sizin ya HTTP sunucusunu ya da veritabanı sunucusunu baştan çalıştırmanız + gerekecektir. Başka bir götürü transaction kullanırken oluşabilir. Bir + transaction bloğu, betiğin çalışma süresi bloğun ömründen kisaysa, bir + sonraki betiğe taşınacaktır. İki durumda da <function>register_shutdown_function</function> ile transaction'i geri - alacak ya da tablo kilitlerini kaldýracak bir temizlik fonksiyonu + alacak ya da tablo kilitlerini kaldıracak bir temizlik fonksiyonu kaydedebilirsiniz. Daha iyisi, problemleri tümüyle önlemek için tablo - kilitleri veya transaction kullanan betiklerde kalýcý baðlantýlarý - kullanmamaktýr (baþka yerlerde hala kullanabilirsiniz). + kilitleri veya transaction kullanan betiklerde kalıcı bağlantıları + kullanmamaktır (başka yerlerde hala kullanabilirsiniz). </simpara> </warning> <simpara> - Önemli bir özet. Kalýcý baðlantýlar normal baðlantýlarla birebir - eþlenebilecek þekilde tasarlandý. Bu demektir ki <emphasis>her - zaman</emphasis> kalýcý baðlantýlarý normal olanlarla deðiþtirebilirsiniz, - ve bu betiklerin davranýþlarýný etkilemeyecektir. Betiklerin etkinliklerini - <emphasis>belki</emphasis> deðiþtirebilirler, fakat davranýþýný - deðiþtirmezler! + Önemli bir özet. Kalıcı bağlantılar normal bağlantılarla birebir + eşlenebilecek şekilde tasarlandı. Bu demektir ki <emphasis>her + zaman</emphasis> kalıcı bağlantıları normal olanlarla değiştirebilirsiniz, + ve bu betiklerin davranışlarını etkilemeyecektir. Betiklerin etkinliklerini + <emphasis>belki</emphasis> değiştirebilirler, fakat davranışını + değiştirmezler! </simpara> </chapter> Index: phpdoc/tr/features/remote-files.xml diff -u phpdoc/tr/features/remote-files.xml:1.2 phpdoc/tr/features/remote-files.xml:1.3 --- phpdoc/tr/features/remote-files.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/remote-files.xml Mon Dec 10 13:38:22 2001 @@ -1,35 +1,35 @@ <?xml version="1.0" encoding="iso-8859-9"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.remote-files"> - <title>Uzaktaki Dosyalarý Kullanmak</title> + <title>Uzaktaki Dosyaları Kullanmak</title> <!-- dirge: remote file => uzak dosya --> <para> - "URL fopen wrapper" PHP derlenmeden önce aktifleþtirildiði (ki, - --disable-url-fopen-wrapper parametresini özellikle vermediðinizde + "URL fopen wrapper" PHP derlenmeden önce aktifleştirildiği (ki, + --disable-url-fopen-wrapper parametresini özellikle vermediğinizde böyledir) (4.0.3 öncesi sürümler için) veya php.ini'de - <parameter>allow_url_fopen</parameter> ayarýna off deðerini vermediðiniz + <parameter>allow_url_fopen</parameter> ayarına off değerini vermediğiniz (yeni sürümler için) sürece, HTTP ve FTP URL'lerini parametre olarak dosya ismi alan, <function>require</function> ve - <function>include</function> ifadeleri dahil, çoðu fonksiyonda kullanabilirsiniz. + <function>include</function> ifadeleri dahil, çoğu fonksiyonda kullanabilirsiniz. </para> <para> <note> <para> - Uzak dosyalarý Windows altýnda <function>include</function> ve - <function>require</function> ifadelerinde kullanamazsýnýz. + Uzak dosyaları Windows altında <function>include</function> ve + <function>require</function> ifadelerinde kullanamazsınız. </para> </note> </para> <para> - Örneðin, bunu uzaktaki bir HTTP sunucusunda olan bir dosyayý açmak, - çýktýsýný ayýklamak ve elde edilen bilgiyi bir veritabaný sorgusunda - kullanmak, ya da basitçe web sitenizin geri kalanýna uygun bir görüntüde + Örneğin, bunu uzaktaki bir HTTP sunucusunda olan bir dosyayı açmak, + çıktısını ayıklamak ve elde edilen bilgiyi bir veritabanı sorgusunda + kullanmak, ya da basitçe web sitenizin geri kalanına uygun bir görüntüde göstermek için kullanabilirsiniz. </para> <para> <example> - <title>Uzaktaki bir sayfanýn baþlýðýný almak</title> + <title>Uzaktaki bir sayfanın başlığını almak</title> <programlisting role="php"> <![CDATA[ <?php @@ -53,12 +53,12 @@ </example> </para> <para> - Ya da bunu, doðru eriþim hakkýna sahip bir kullanýcýyla baðlandýðýnýz - ve çoktan dosya varolmadýðý sürece FTP ile uzaktaki dosyalara yazmak - için kullanabilirsiniz. 'anonymous' dýþýnda bir kullanýcý olarak baðlanmak - için kullanýcýyý (ve muhtemelen parolayý) URL içine yazmalýsýnýz, örneðin - 'ftp://kullanýcý:parola@ftp.example.com/yol/dosya' gibi. (Ayný yöntemi - HTTP'de Basic Authentication'a ihtiyaç duyan dosyalara eriþmek için de + Ya da bunu, doğru erişim hakkına sahip bir kullanıcıyla bağlandığınız + ve çoktan dosya varolmadığı sürece FTP ile uzaktaki dosyalara yazmak + için kullanabilirsiniz. 'anonymous' dışında bir kullanıcı olarak bağlanmak + için kullanıcıyı (ve muhtemelen parolayı) URL içine yazmalısınız, örneğin + 'ftp://kullanıcı:parola@ftp.example.com/yol/dosya' gibi. (Aynı yöntemi + HTTP'de Basic Authentication'a ihtiyaç duyan dosyalara erişmek için de kullanabilirsiniz.) </para> <para> @@ -83,11 +83,11 @@ <para> <note> <para> - Yukarýdaki örnekten, uzaktaki bir günlüðe yazmak için nasýl bir teknik - kullanacaðýnýz konusunda bir fikir almýþsýnýzdýr, fakat önceden - belirtildiði gibi, URL fopen() sargýlarýyla sadece yeni dosyalara - yazabilirsiniz. Bunun gibi daðýtýlmýþ günlük tutmak isterseniz, - <function>syslog</function>'a bir göz atmalýsýnýz. + Yukarıdaki örnekten, uzaktaki bir günlüğe yazmak için nasıl bir teknik + kullanacağınız konusunda bir fikir almışsınızdır, fakat önceden + belirtildiği gibi, URL fopen() sargılarıyla sadece yeni dosyalara + yazabilirsiniz. Bunun gibi dağıtılmış günlük tutmak isterseniz, + <function>syslog</function>'a bir göz atmalısınız. </para> </note> </para>
Index: phpdoc/tr/features/connection-handling.xml diff -u phpdoc/tr/features/connection-handling.xml:1.2 phpdoc/tr/features/connection-handling.xml:1.3 --- phpdoc/tr/features/connection-handling.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/connection-handling.xml Mon Dec 10 13:38:22 2001 @@ -1,78 +1,78 @@ <?xml version="1.0" encoding="iso-8859-9"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.connection-handling"> - <!-- dirge: handling => iþleme --> - <title>Baðlantý Ýþleme</title> + <!-- dirge: handling => işleme --> + <title>Bağlantı İşleme</title> <note> - <para>Burada yazanlar 3.0.7 ve sonrasý sürümler için geçerlidir.</para> + <para>Burada yazanlar 3.0.7 ve sonrası sürümler için geçerlidir.</para> </note> <para> - PHP'nin içinde baðlantý durumu saklanýr. Olasý durumlar 3 tanedir: + PHP'nin içinde bağlantı durumu saklanır. Olası durumlar 3 tanedir: <itemizedlist> <listitem><simpara>0 - NORMAL (normal)</simpara></listitem> - <listitem><simpara>1 - ABORTED (iptal edilmiþ)</simpara></listitem> - <listitem><simpara>2 - TIMEOUT (zaman aþýmýna uðramýþ)</simpara></listitem> + <listitem><simpara>1 - ABORTED (iptal edilmiş)</simpara></listitem> + <listitem><simpara>2 - TIMEOUT (zaman aşımına uğramış)</simpara></listitem> </itemizedlist> </para> <simpara> - PHP betiði normal olarak çalýþýrken NORMAL durumu aktiftir. Eðer alýcý - taraf baðlantýyý keserse ABORTED durum anahtarý aktifleþtirilir. Alýcý - tarafýn baðlantýyý kesmesi genellikle uzaktaki kullanýcýnýn STOP düðmesine - basmasýndan kaynaklanýr. Eðer PHP'ye bildirilen zaman sýnýrýna (bkz. - <function>set_time_limit</function>) ulaþýlýrsa, TIMOUT durum anahtarý - aktifleþtirilir. + PHP betiği normal olarak çalışırken NORMAL durumu aktiftir. Eğer alıcı + taraf bağlantıyı keserse ABORTED durum anahtarı aktifleştirilir. Alıcı + tarafın bağlantıyı kesmesi genellikle uzaktaki kullanıcının STOP düğmesine + basmasından kaynaklanır. Eğer PHP'ye bildirilen zaman sınırına (bkz. + <function>set_time_limit</function>) ulaşılırsa, TIMOUT durum anahtarı + aktifleştirilir. </simpara> <simpara> <!-- dirge: return => döndürmek --> <!-- dirge: directive => direktif --> - Alýcýnýn baðlantýyý kesmesi durumunda PHP betiðinin çalýþmasýnýn durdurulup - durdurulmayacaðýný seçebilirsiniz. Bazý durumlarda karþý taraftaki internet - gezgini yolladýðýnýz çýktýyý almýyor olsa bile PHP betiðinin normal olarak - sonlanmasý kullanýþlý olabilir. Ancak PHP'nin öntanýmlý davranýþý karþý - taraftaki internet gezgini baðlantýyý kestiðinde betiði sonlandýrmaktýr. - Bu davranýþ ignore_user_abort php.ini direktifiyle ayarlanabileceði gibi - bunun Apache .conf karþýlýðý olan php3_ignore_user_abort direktifiyle veya + Alıcının bağlantıyı kesmesi durumunda PHP betiğinin çalışmasının durdurulup + durdurulmayacağını seçebilirsiniz. Bazı durumlarda karşı taraftaki internet + gezgini yolladığınız çıktıyı almıyor olsa bile PHP betiğinin normal olarak + sonlanması kullanışlı olabilir. Ancak PHP'nin öntanımlı davranışı karşı + taraftaki internet gezgini bağlantıyı kestiğinde betiği sonlandırmaktır. + Bu davranış ignore_user_abort php.ini direktifiyle ayarlanabileceği gibi + bunun Apache .conf karşılığı olan php3_ignore_user_abort direktifiyle veya <function>ignore_user_abort</function> fonksiyonuyla da ayarlanabilir. Tek istisna <function>register_shutdown_function</function> fonksiyonu ile - bir kapanýþ fonksiyonu tanýmlamanýzdýr. Tanýmlý bir kapanýþ fonkiyonu - varken, betiðiniz çýktý yollamaya çalýþtýðýnda PHP alýcýnýn STOP düðmesine - bastýðýný algýlayacak ve tanýmladýðýnýz fonksiyonu çaðýracaktýr. Bu kapanýþ - fonksiyonu ayrýca betiðiniz normal olarak sonlandýðýnda da çaðrýlacaðý - için, sadece baðlantýnýn kesilmesi durumunda yapýlmasýný istediðiniz iþler + bir kapanış fonksiyonu tanımlamanızdır. Tanımlı bir kapanış fonkiyonu + varken, betiğiniz çıktı yollamaya çalıştığında PHP alıcının STOP düğmesine + bastığını algılayacak ve tanımladığınız fonksiyonu çağıracaktır. Bu kapanış + fonksiyonu ayrıca betiğiniz normal olarak sonlandığında da çağrılacağı + için, sadece bağlantının kesilmesi durumunda yapılmasını istediğiniz işler varsa <function>connection_aborted</function> fonksiyonunu - kullanabilirsiniz. Bu fonksiyon eðer baðlantý kesilmiþse &true; deðerini + kullanabilirsiniz. Bu fonksiyon eğer bağlantı kesilmişse &true; değerini döndürecektir. </simpara> <simpara> - Betiðiniz ayrýca yerleþik betik süre-ölçeri tarafýndan da - sonlandýrýlabilir. Öntanýmlý zaman 30 saniyedir. Bu deðer - max_execution_time php.ini direktifi veya bunun Apache .conf karþýlýðý olan - php3_max_execution_time direktifi ile ayarlanabileceði gibi + Betiğiniz ayrıca yerleşik betik süre-ölçeri tarafından da + sonlandırılabilir. Öntanımlı zaman 30 saniyedir. Bu değer + max_execution_time php.ini direktifi veya bunun Apache .conf karşılığı olan + php3_max_execution_time direktifi ile ayarlanabileceği gibi <function>set_time_limit</function> fonksiyonuyla da ayarlanabilir. - Belirlenen azami sürenin dolmasý durumunda betik sonlandýrýlacak, ve - yukarýdaki baðlantý kesilmesi durumunda olduðu gibi, varsa, tanýmlanmýþ - kapanýþ fonksiyonu çaðrýlacaktýr. Bu kapanýþ fonksiyonunun içinde, - çaðrýlmasýnýn sebebinin süre dolmasý olup olmadýðýný öðrenmek isterseniz + Belirlenen azami sürenin dolması durumunda betik sonlandırılacak, ve + yukarıdaki bağlantı kesilmesi durumunda olduğu gibi, varsa, tanımlanmış + kapanış fonksiyonu çağrılacaktır. Bu kapanış fonksiyonunun içinde, + çağrılmasının sebebinin süre dolması olup olmadığını öğrenmek isterseniz <function>connection_timeout</function> fonksiyonunu kullanabilirsiniz. Bu - fonksiyon sürenin dolmuþ olmasý durumunda &true; deðerini döndürecektir. + fonksiyon sürenin dolmuş olması durumunda &true; değerini döndürecektir. </simpara> <simpara> - Dikkat edilmesi gereken bir nokta hem ABORTED hem de TIMEOUT durumlarýnýn - ayný anda aktif olabileceðidir. Bu, PHP'ye karþý tarafýn baðlantýyý - sonlandýrmasýný gözardý etmesini söylerseniz mümkün olur. PHP'nin - baðlantýnýn kapandýðýný anlamasýna raðmen betik çalýþmaya devam edecektir. - Süre sýnýrý aþýldýðýnda betik sonlandýrýlýr ve, varsa, kapanýþ fonksiyonu - çaðrýlýr. Bu noktada <function>connection_timeout</function> ve - <function>connection_aborted</function> fonksiyonlarý &true; deðerini - döndürür. Ýki durumu ayný anda <function>connection_status</function> - fonksiyonu ile kontrol edebilirsiniz. Bu fonksiyon aktif durumlarý içeren - bit alanýný döndürür. Örneðin, iki durum da aktifse geriye dönüþ deðeri + Dikkat edilmesi gereken bir nokta hem ABORTED hem de TIMEOUT durumlarının + aynı anda aktif olabileceğidir. Bu, PHP'ye karşı tarafın bağlantıyı + sonlandırmasını gözardı etmesini söylerseniz mümkün olur. PHP'nin + bağlantının kapandığını anlamasına rağmen betik çalışmaya devam edecektir. + Süre sınırı aşıldığında betik sonlandırılır ve, varsa, kapanış fonksiyonu + çağrılır. Bu noktada <function>connection_timeout</function> ve + <function>connection_aborted</function> fonksiyonları &true; değerini + döndürür. İki durumu aynı anda <function>connection_status</function> + fonksiyonu ile kontrol edebilirsiniz. Bu fonksiyon aktif durumları içeren + bit alanını döndürür. Örneğin, iki durum da aktifse geriye dönüş değeri olarak 3'ü verecektir. </simpara> </chapter> Index: phpdoc/tr/features/error-handling.xml diff -u phpdoc/tr/features/error-handling.xml:1.2 phpdoc/tr/features/error-handling.xml:1.3 --- phpdoc/tr/features/error-handling.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/error-handling.xml Mon Dec 10 13:38:22 2001 @@ -1,19 +1,19 @@ <?xml version="1.0" encoding="iso-8859-1"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.error-handling"> - <title>Hata Ýþlemleri</title> + <title>Hata İşlemleri</title> <para> - PHP'de pek çok uyarý çeþidi vardýr. Bunlar: + PHP'de pek çok uyarı çeşidi vardır. Bunlar: <table> - <title>PHP uyarý çeþitleri</title> + <title>PHP uyarı çeşitleri</title> <tgroup cols="4"> <thead> <row> - <entry>Deðer</entry> + <entry>Değer</entry> <entry>Sabit</entry> - <entry>Taným</entry> + <entry>Tanım</entry> <entry>Not</entry> </row> </thead> @@ -21,40 +21,40 @@ <row> <entry>1</entry> <entry>E_ERROR</entry> - <entry>hayati çalýþma hatalarý</entry> + <entry>hayati çalışma hataları</entry> <entry></entry> </row> <row> <entry>2</entry> <entry>E_WARNING</entry> - <entry>çalýþma uyarýlarý (hayati olmayan hatalar)</entry> + <entry>çalışma uyarıları (hayati olmayan hatalar)</entry> <entry></entry> </row> <row> <entry>4</entry> <entry>E_PARSE</entry> - <entry>derleme sýrasýnda ayrýþtýrma hatalarý</entry> + <entry>derleme sırasında ayrıştırma hataları</entry> <entry></entry> </row> <row> <entry>8</entry> <entry>E_NOTICE </entry> <entry> - çalýþma sýrasýndaki bildirimler (uyarýlardan daha az önemli) + çalışma sırasındaki bildirimler (uyarılardan daha az önemli) </entry> <entry></entry> </row> <row> <entry>16</entry> <entry>E_CORE_ERROR</entry> - <entry>PHP'nin iç yapýsýyla ilgili, baþlatýlmasýný engelleyen hayati hatalar</entry> + <entry>PHP'nin iç yapısıyla ilgili, başlatılmasını engelleyen hayati hatalar</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>32</entry> <entry>E_CORE_WARNING</entry> <entry> - PHP'nin iç yapýsýyla ilgili, baþlatýlmasý ile ilgili uyarýlar (hayati olmayan + PHP'nin iç yapısıyla ilgili, başlatılması ile ilgili uyarılar (hayati olmayan hatalar) </entry> <entry>sadece PHP 4</entry> @@ -62,37 +62,37 @@ <row> <entry>64</entry> <entry>E_COMPILE_ERROR</entry> - <entry>hayati derleme hatalarý</entry> + <entry>hayati derleme hataları</entry> <entry>Sadece PHP 4</entry> </row> <row> <entry>128</entry> <entry>E_COMPILE_WARNING</entry> - <entry>derleme sýrasýndaki uyarýlar (hayati olmayan hatalar)</entry> + <entry>derleme sırasındaki uyarılar (hayati olmayan hatalar)</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>256</entry> <entry>E_USER_ERROR</entry> - <entry>kullanýcýnýn yarattýðý hata mesajý</entry> + <entry>kullanıcının yarattığı hata mesajı</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>512</entry> <entry>E_USER_WARNING</entry> - <entry>kullanýcýnýn yarattýðý uyarý mesajý</entry> + <entry>kullanıcının yarattığı uyarı mesajı</entry> <entry>sadece PHP 4</entry> </row> <row> <entry>1024</entry> <entry>E_USER_NOTICE </entry> - <entry>kullanýcýnýn yarattýðý bildiri mesajý</entry> + <entry>kullanıcının yarattığı bildiri mesajı</entry> <entry>sadece PHP 4</entry> </row> <row> <entry></entry> <entry>E_ALL</entry> - <entry>desteklendikleri sürece, yukarýdakilerin hepsi</entry> + <entry>desteklendikleri sürece, yukarıdakilerin hepsi</entry> <entry></entry> </row> </tbody> @@ -101,82 +101,82 @@ </para> <para> - Yukarýdaki deðerler (sayýsal veya sembolik) hangi hatalarýn bildirileceðini - belirleyen bit maskesini oluþtururken kullanýlýr. Bu deðerleri - birleþtirmeyi veya bazýlarýný maskelemeyi - <link linkend="language.operators.bitwise">bit-tabanlý iþlemler</link> ile + Yukarıdaki değerler (sayısal veya sembolik) hangi hataların bildirileceğini + belirleyen bit maskesini oluştururken kullanılır. Bu değerleri + birleştirmeyi veya bazılarını maskelemeyi + <link linkend="language.operators.bitwise">bit-tabanlı işlemler</link> ile yapabilirsiniz. <filename>php.ini</filename> içinde sadece '|', '~', '!' ve - '&' iþlemlerinin anlaþýlacaðýna, ve <filename>php3.ini</filename> - içinde hiçbirinin anlaþýlmayacaðýna dikkat edin. + '&' işlemlerinin anlaşılacağına, ve <filename>php3.ini</filename> + içinde hiçbirinin anlaşılmayacağına dikkat edin. </para> <para> - PHP 4'te öntanýmlý <link - linkend="ini.error-reporting">error_reporting</link> deðeri <literal>E_ALL - & ~E_NOTICE</literal>'dir ve anlamý E-NOTICE-seviyesi dýþýndaki tüm - hatalarýn ve uyarýlarýn bildirilmesidir. PHP 3'de öntanýmlý ayar - <literal>(E_ERROR | E_WARNING | E_PARSE)</literal>'dýr ve anlamý öncekiyle - aynýdýr. Fakat dikkat edin ki, PHP 3'ün <filename>php3.ini</filename> - dosyasýnda sabitler desteklenmediðinden <link - linkend="ini.error-reporting">error_reporting</link> ayarý sayýsal olmak - durumundadýr; az önce belirtilen deðer de <literal>7</literal>'ye denk + PHP 4'te öntanımlı <link + linkend="ini.error-reporting">error_reporting</link> değeri <literal>E_ALL + & ~E_NOTICE</literal>'dir ve anlamı E-NOTICE-seviyesi dışındaki tüm + hataların ve uyarıların bildirilmesidir. PHP 3'de öntanımlı ayar + <literal>(E_ERROR | E_WARNING | E_PARSE)</literal>'dır ve anlamı öncekiyle + aynıdır. Fakat dikkat edin ki, PHP 3'ün <filename>php3.ini</filename> + dosyasında sabitler desteklenmediğinden <link + linkend="ini.error-reporting">error_reporting</link> ayarı sayısal olmak + durumundadır; az önce belirtilen değer de <literal>7</literal>'ye denk gelir. </para> <para> - Baþlangýç deðeri ini dosyasýnda <link + Başlangıç değeri ini dosyasında <link linkend="ini.error-reporting">error_reporting</link> direktifiyle, - Apache'nizin <filename>httpd.conf</filename> dosyasýnda php_error_reporting - (PHP 3 için php3_error_reporting) direktifiyle, ve son olarak çalýþma - esnasýnda betik içinden <function>error_reporting</function> fonksiyonuyla + Apache'nizin <filename>httpd.conf</filename> dosyasında php_error_reporting + (PHP 3 için php3_error_reporting) direktifiyle, ve son olarak çalışma + esnasında betik içinden <function>error_reporting</function> fonksiyonuyla belirlenebilir. </para> <warning> <para> - Sunucularýnýzý veya kodlarýnýzý PHP 3'ten PHP 4'e güncellerken bu ayarlarý - ve <function>error_reporting</function> fonksiyonu çaðrýmlarýný kontrol - etmelisiniz, yoksa istemeyerek yeni hata çeþitlerinin bildirimlerini - kapatabilirsiniz, özellikle E_COMPILE_ERROR'u. Bu, hatanýn ne ve nerede - olduðuna dair hiç bir bilgi býrakmadan betiklerinizin tamamiyle boþ + Sunucularınızı veya kodlarınızı PHP 3'ten PHP 4'e güncellerken bu ayarları + ve <function>error_reporting</function> fonksiyonu çağrımlarını kontrol + etmelisiniz, yoksa istemeyerek yeni hata çeşitlerinin bildirimlerini + kapatabilirsiniz, özellikle E_COMPILE_ERROR'u. Bu, hatanın ne ve nerede + olduğuna dair hiç bir bilgi bırakmadan betiklerinizin tamamiyle boş sayfalar üretmesine yolaçabilir. </para> </warning> <para> Tüm <link linkend="language.expressions">PHP ifadeleri</link> @ ön-ekiyle - çaðrýlabilir. Bu ön-ek, o ifade için hata bildirimini kapatacaktýr. Eðer - böyle bir ifade sýrasýnda hata oluþursa, ve <link - linkend="ini.track-errors">track_errors</link> özelliði aktifse, hata - mesajýný <literal>$php_errormsg</literal> genel deðiþkeninde + çağrılabilir. Bu ön-ek, o ifade için hata bildirimini kapatacaktır. Eğer + böyle bir ifade sırasında hata oluşursa, ve <link + linkend="ini.track-errors">track_errors</link> özelliği aktifse, hata + mesajını <literal>$php_errormsg</literal> genel değişkeninde bulabilirsiniz. </para> <note> <para> <link linkend="language.operators.errorcontrol">@ hata-kontrol - iþlemi</link> ön-eki, ayrýþtýrma hatalarýný kapatmayacaktýr. + işlemi</link> ön-eki, ayrıştırma hatalarını kapatmayacaktır. </para> </note> <warning> <para> - Þu an için <link linkend="language.operators.errorcontrol">@ - hata-kontrol iþlemi</link> ön-eki betik sonlandýrýlmasýna yol açacak - kritik hatalarýn bile gösterilmesini engelleyecektir. Diðer þeylerin - dýþýnda, bu demektir ki <link + Şu an için <link linkend="language.operators.errorcontrol">@ + hata-kontrol işlemi</link> ön-eki betik sonlandırılmasına yol açacak + kritik hataların bile gösterilmesini engelleyecektir. Diğer şeylerin + dışında, bu demektir ki <link linkend="language.operators.errorcontrol">@</link> ön-ekini belli - fonksiyonlardan gelecek hatalarý bastýrmak için kullanýrsanýz, ve bu - fonksiyonlar tanýmlý deðilse, betik nedeni belirtilmeden - sonlandýrýlacaktýr. + fonksiyonlardan gelecek hataları bastırmak için kullanırsanız, ve bu + fonksiyonlar tanımlı değilse, betik nedeni belirtilmeden + sonlandırılacaktır. </para> </warning> <para> - Aþaðýda PHP'deki hata kontrolü iþlemlerinin kullanýmýna iliþkin bir örnek - bulacaksýnýz. Burada bilgileri XML formatýnda bir günlükte saklayan ve - programcýya kritik hatalarda e-mail yollayan bir hata iþleme fonksiyonu tanýmlýyoruz. + Aşağıda PHP'deki hata kontrolü işlemlerinin kullanımına ilişkin bir örnek + bulacaksınız. Burada bilgileri XML formatında bir günlükte saklayan ve + programcıya kritik hatalarda e-mail yollayan bir hata işleme fonksiyonu tanımlıyoruz. <example> - <title>Betik için hata iþlemenin kullanýmý</title> + <title>Betik için hata işlemenin kullanımı</title> <programlisting role="php"> <![CDATA[ <?php @@ -281,12 +281,12 @@ ]]> </programlisting> </example> - Bu <link linkend="ref.errorfunc">Hata Ýþleme ve Günlük fonksiyonlarý</link> - hakkýnda basit bir örnek. + Bu <link linkend="ref.errorfunc">Hata İşleme ve Günlük fonksiyonları</link> + hakkında basit bir örnek. </para> <para> - Ayrýca bkz. <function>error_reporting</function>, + Ayrıca bkz. <function>error_reporting</function>, <function>error_log</function>, <function>set_error_handler</function>, <function>restore_error_handler</function>, Index: phpdoc/tr/features/persistent-connections.xml diff -u phpdoc/tr/features/persistent-connections.xml:1.2 phpdoc/tr/features/persistent-connections.xml:1.3 --- phpdoc/tr/features/persistent-connections.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/persistent-connections.xml Mon Dec 10 13:38:22 2001 @@ -1,120 +1,120 @@ <?xml version="1.0" encoding="iso-8859-9"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.persistent-connections"> - <title>Kalýcý Veritabaný Baðlantýlarý</title> + <title>Kalıcı Veritabanı Bağlantıları</title> <simpara> - Kalýcý baðlantýlar, betiðiniz sonlandýðýnda kapatýlmayan SQL baðlantýlarýna - denir. Kalýcý bir baðlantý istendiðinde, PHP daha önceden tamamen ayný - özelliklerde baþka bir kalýcý baðlantý açýlýp açýlmadýðýna bakar (daha - önceden kalan) - ve eðer varsa, onu kullanýr. Eðer yoksa, yeni baðlantý - kurar. 'Tamamen ayný' baðlantýlar, ayný sunucuya, ayný kullanýcý ismi ve - (gerekliyse) þifreyle açýlmýþ baðlantýlardýr. + Kalıcı bağlantılar, betiğiniz sonlandığında kapatılmayan SQL bağlantılarına + denir. Kalıcı bir bağlantı istendiğinde, PHP daha önceden tamamen aynı + özelliklerde başka bir kalıcı bağlantı açılıp açılmadığına bakar (daha + önceden kalan) - ve eğer varsa, onu kullanır. Eğer yoksa, yeni bağlantı + kurar. 'Tamamen aynı' bağlantılar, aynı sunucuya, aynı kullanıcı ismi ve + (gerekliyse) şifreyle açılmış bağlantılardır. </simpara> <simpara> - HTTP sunucularýnýn çalýþma mantýðýna aþina olmayanlar, kalýcý baðlantýlarý - gerçekte olmadýklarý þeyler sanabilirler. Özellikle, ayný SQL baðlantýsý - üzerinde 'kullanýcý oturumlarý' <emphasis>açmazlar</emphasis>, - transaction'larý daha etkili bir þekilde yapmanýzý - <emphasis>saðlamazlar</emphasis> ve baþka pek çok þeyi gerçekleþtirmezler. - Konu hakkýnda daha açýk olmak gerekirse, kalýcý baðlantýlar size kardeþleri - kalýcý olmayan baðlantýlarýn sunmadýðý hiç bir ek özellik + HTTP sunucularının çalışma mantığına aşina olmayanlar, kalıcı bağlantıları + gerçekte olmadıkları şeyler sanabilirler. Özellikle, aynı SQL bağlantısı + üzerinde 'kullanıcı oturumları' <emphasis>açmazlar</emphasis>, + transaction'ları daha etkili bir şekilde yapmanızı + <emphasis>sağlamazlar</emphasis> ve başka pek çok şeyi gerçekleştirmezler. + Konu hakkında daha açık olmak gerekirse, kalıcı bağlantılar size kardeşleri + kalıcı olmayan bağlantıların sunmadığı hiç bir ek özellik <emphasis>sunmazlar</emphasis>. </simpara> <simpara> Neden? </simpara> <simpara> - Bu daha çok HTTP sunucularýnýn çalýþma mantýðýyla alakalý. Sunucunun - PHP'yi kullanarak web sayfalarý oluþturmasýnýn üç yöntemi var. + Bu daha çok HTTP sunucularının çalışma mantığıyla alakalı. Sunucunun + PHP'yi kullanarak web sayfaları oluşturmasının üç yöntemi var. </simpara> <simpara> - <!-- dirge: wrapper => sargý --> - Ýlk yöntem PHP'yi CGI "sargýsý" olarak kullanmak. Bu þekilde çalýþtýðýnda, - sunucuya gelen her sayfa isteði için ayrý bir PHP yorumlayýcýsý yaratýlýr - ve yokedilir (PHP sayfalarý için). Ýþlemler sonunda yokedildikleri için, - yarattýklarý her kaynak da (SQL sunucusuna baðlantýlar gibi) onlarla - birlikte yokolur. Bu durumda, kalýcý baðlantýlar kurmayý denemekle elinize - hiçbirþey geçmez -- basitçe, kalýcý olamazlar. + <!-- dirge: wrapper => sargı --> + İlk yöntem PHP'yi CGI "sargısı" olarak kullanmak. Bu şekilde çalıştığında, + sunucuya gelen her sayfa isteği için ayrı bir PHP yorumlayıcısı yaratılır + ve yokedilir (PHP sayfaları için). İşlemler sonunda yokedildikleri için, + yarattıkları her kaynak da (SQL sunucusuna bağlantılar gibi) onlarla + birlikte yokolur. Bu durumda, kalıcı bağlantılar kurmayı denemekle elinize + hiçbirşey geçmez -- basitçe, kalıcı olamazlar. </simpara> <simpara> - <!-- dirge: multiprocess => çok iþlemli --> - Ýkinci, ve en popüler, yöntem PHP'yi çok iþlemli (multiprocess) bir - sunucuda modül olarak kullanmak, þu an sadece Apache'de olduðu gibi. Çok - iþlemli bir sunucu genellikle bir ana iþlemden (parent) ve onun kontrolündeki - gerçekte iþlemleri yapan çocuk iþlemlerden (children) oluþur. Ne zaman bir - alýcýdan istek gelse, istek o anda baþka bir isteðe cevap vermeyen bir çocuk - iþleme devredilir. Bu demektir ki, ayný alýcý ikinci bir istek yolladýðýnda, - baþka bir çocuk iþlem tarafýndan karþýlanabilir. Kalýcý baðlantýlarýn - sizin için burada yaptýðý iþ, her çocuk iþlemin sadece ilk seferde SQL - sunucusuna baðlanmasýdýr. Baþka bir sayfanýn ayný baðlantýya ihtiyaç duymasý - durumunda önceden kurulmuþ baðlantý kullanýlýr. - </simpara> - <simpara> - <!-- dirge: thread => iþ parçacýðý --> - Son yöntem PHP'yi çok iþ parçacýklý (multithreaded) sunucularda eklenti - olarak kullanmak. Þu anda PHP 4'ün Netscape FastTrack (iPlanet), Microsoft - Internet Information Server (IIS), ve O'Reilly Website Pro gibi çok iþ - parçacýklý sunucularda çalýþmasýný saðlayan ISAPI, WSAIP, ve NSAPI - (Windows'ta) için desteði var. Bu çalýþma þekli az önce anlatýlan çok - iþlemli modelle ayný. SAPI desteðinin PHP 3'te olmadýðýna dikkat edin. + <!-- dirge: multiprocess => çok işlemli --> + İkinci, ve en popüler, yöntem PHP'yi çok işlemli (multiprocess) bir + sunucuda modül olarak kullanmak, şu an sadece Apache'de olduğu gibi. Çok + işlemli bir sunucu genellikle bir ana işlemden (parent) ve onun kontrolündeki + gerçekte işlemleri yapan çocuk işlemlerden (children) oluşur. Ne zaman bir + alıcıdan istek gelse, istek o anda başka bir isteğe cevap vermeyen bir çocuk + işleme devredilir. Bu demektir ki, aynı alıcı ikinci bir istek yolladığında, + başka bir çocuk işlem tarafından karşılanabilir. Kalıcı bağlantıların + sizin için burada yaptığı iş, her çocuk işlemin sadece ilk seferde SQL + sunucusuna bağlanmasıdır. Başka bir sayfanın aynı bağlantıya ihtiyaç duyması + durumunda önceden kurulmuş bağlantı kullanılır. + </simpara> + <simpara> + <!-- dirge: thread => iş parçacığı --> + Son yöntem PHP'yi çok iş parçacıklı (multithreaded) sunucularda eklenti + olarak kullanmak. Şu anda PHP 4'ün Netscape FastTrack (iPlanet), Microsoft + Internet Information Server (IIS), ve O'Reilly Website Pro gibi çok iş + parçacıklı sunucularda çalışmasını sağlayan ISAPI, WSAIP, ve NSAPI + (Windows'ta) için desteği var. Bu çalışma şekli az önce anlatılan çok + işlemli modelle aynı. SAPI desteğinin PHP 3'te olmadığına dikkat edin. </simpara> <simpara> - Eðer kalýcý baðlantýlarýn ek özellikleri yoksa, neye yararlar? + Eğer kalıcı bağlantıların ek özellikleri yoksa, neye yararlar? </simpara> <simpara> <!-- dige: efficiency => etkinlik --> - Buradaki cevap oldukça basit -- etkinlik. Kalýcý baðlantýlar, SQL - sunucunuza yeni baðlantý açmak performans açýsýndan hesaplý deðilse - çok iþe yararlar. Performans hesaplýlýðý pek çok þeye baðlýdýr. Örneðin, ne - tür bir veritabaný olduðu, HTTP sunucusuyla ayný bilgisayarda olup - olmayýþý, SQL sunucusunun çalýþtýðý bilgisayarýn iþlem yoðunluðu ve - benzeri. Sonuç þu ki, yeni baðlantý performansý düþükse, kalýcý baðlantýlar - iþe yarar. Her çocuk iþlemin her seferinde yeni baðlantý açmasý yerine - hayatý boyunca sadece bir kere baðlantý yapmasýný ve sürekli onu kullanmasýný - saðlarlar. Bu demektir ki, kalýcý baðlantý açan her çocuk iþlemin kendisine - ait SQL sunucusuna kalýcý bir baðlantýsý olacaktýr. Örneðin, 20 tane - kalýcý baðlantý açan betik çalýþtýrmýþ farklý çocuk iþlem varsa, SQL - sunucusuna, her çocuk iþlemden bir tane olmak üzere, 20 tane baðlantý - olacaktýr. - </simpara> - <simpara> - Ancak dikkat edin ki, SQL sunucusunun baðlantý limiti kalýcý baðlantýlarla - aþýldýðýnda bunun bir takým götürüleri olacaktýr. Eðer veritabaný - sunucunuz ayni anda 16 baðlantýya izin veriyorsa, ve yoðun bir çalýþma - anýnda 17 çocuk iþlem kalýcý baðlantý açmaya kalkarsa, bunlardan biri - baðlantýyý açamaz. Eðer betiklerinizde baðlantýlarýn kapanabilmesine olanak - tanýmayan hatalar varsa (kýsýr döngüler gibi), 32 baðlantýya izin veren bir - veritabaný sunucusu çok çabuk bir þekilde kullaným dýþý olur. Boþ duran - (idle) baðlantýlarla nasýl ilgileneceðiniz konusunda veritabanýnýzýn - dökümanlarýna baþvurun. + Buradaki cevap oldukça basit -- etkinlik. Kalıcı bağlantılar, SQL + sunucunuza yeni bağlantı açmak performans açısından hesaplı değilse + çok işe yararlar. Performans hesaplılığı pek çok şeye bağlıdır. Örneğin, ne + tür bir veritabanı olduğu, HTTP sunucusuyla aynı bilgisayarda olup + olmayışı, SQL sunucusunun çalıştığı bilgisayarın işlem yoğunluğu ve + benzeri. Sonuç şu ki, yeni bağlantı performansı düşükse, kalıcı bağlantılar + işe yarar. Her çocuk işlemin her seferinde yeni bağlantı açması yerine + hayatı boyunca sadece bir kere bağlantı yapmasını ve sürekli onu kullanmasını + sağlarlar. Bu demektir ki, kalıcı bağlantı açan her çocuk işlemin kendisine + ait SQL sunucusuna kalıcı bir bağlantısı olacaktır. Örneğin, 20 tane + kalıcı bağlantı açan betik çalıştırmış farklı çocuk işlem varsa, SQL + sunucusuna, her çocuk işlemden bir tane olmak üzere, 20 tane bağlantı + olacaktır. + </simpara> + <simpara> + Ancak dikkat edin ki, SQL sunucusunun bağlantı limiti kalıcı bağlantılarla + aşıldığında bunun bir takım götürüleri olacaktır. Eğer veritabanı + sunucunuz ayni anda 16 bağlantıya izin veriyorsa, ve yoğun bir çalışma + anında 17 çocuk işlem kalıcı bağlantı açmaya kalkarsa, bunlardan biri + bağlantıyı açamaz. Eğer betiklerinizde bağlantıların kapanabilmesine olanak + tanımayan hatalar varsa (kısır döngüler gibi), 32 bağlantıya izin veren bir + veritabanı sunucusu çok çabuk bir şekilde kullanım dışı olur. Boş duran + (idle) bağlantılarla nasıl ilgileneceğiniz konusunda veritabanınızın + dökümanlarına başvurun. </simpara> <warning> <simpara> <!-- dirge: register => kaydetmek --> - Kalýcý baðlantý kullanýrken akýlda tutulmasý gereken birkaç ek götürü daha - var. Örneðin kalýcý bir baðlantý üzerinden bir tablo kitlendiyse (LOCK), - ve betik herhangi bir sebepten dolayý kilidi kaldýramýyorsa, ardýsýra gelen - ve ayný baðlantýyý kullanacak betikler süresiz olarak bloke olacak, ve - sizin ya HTTP sunucusunu ya da veritabaný sunucusunu baþtan çalýþtýrmanýz - gerekecektir. Baþka bir götürü transaction kullanýrken oluþabilir. Bir - transaction bloðu, betiðin çalýþma süresi bloðun ömründen kisaysa, bir - sonraki betiðe taþýnacaktýr. Ýki durumda da + Kalıcı bağlantı kullanırken akılda tutulması gereken birkaç ek götürü daha + var. Örneğin kalıcı bir bağlantı üzerinden bir tablo kitlendiyse (LOCK), + ve betik herhangi bir sebepten dolayı kilidi kaldıramıyorsa, ardısıra gelen + ve aynı bağlantıyı kullanacak betikler süresiz olarak bloke olacak, ve + sizin ya HTTP sunucusunu ya da veritabanı sunucusunu baştan çalıştırmanız + gerekecektir. Başka bir götürü transaction kullanırken oluşabilir. Bir + transaction bloğu, betiğin çalışma süresi bloğun ömründen kisaysa, bir + sonraki betiğe taşınacaktır. İki durumda da <function>register_shutdown_function</function> ile transaction'i geri - alacak ya da tablo kilitlerini kaldýracak bir temizlik fonksiyonu + alacak ya da tablo kilitlerini kaldıracak bir temizlik fonksiyonu kaydedebilirsiniz. Daha iyisi, problemleri tümüyle önlemek için tablo - kilitleri veya transaction kullanan betiklerde kalýcý baðlantýlarý - kullanmamaktýr (baþka yerlerde hala kullanabilirsiniz). + kilitleri veya transaction kullanan betiklerde kalıcı bağlantıları + kullanmamaktır (başka yerlerde hala kullanabilirsiniz). </simpara> </warning> <simpara> - Önemli bir özet. Kalýcý baðlantýlar normal baðlantýlarla birebir - eþlenebilecek þekilde tasarlandý. Bu demektir ki <emphasis>her - zaman</emphasis> kalýcý baðlantýlarý normal olanlarla deðiþtirebilirsiniz, - ve bu betiklerin davranýþlarýný etkilemeyecektir. Betiklerin etkinliklerini - <emphasis>belki</emphasis> deðiþtirebilirler, fakat davranýþýný - deðiþtirmezler! + Önemli bir özet. Kalıcı bağlantılar normal bağlantılarla birebir + eşlenebilecek şekilde tasarlandı. Bu demektir ki <emphasis>her + zaman</emphasis> kalıcı bağlantıları normal olanlarla değiştirebilirsiniz, + ve bu betiklerin davranışlarını etkilemeyecektir. Betiklerin etkinliklerini + <emphasis>belki</emphasis> değiştirebilirler, fakat davranışını + değiştirmezler! </simpara> </chapter> Index: phpdoc/tr/features/remote-files.xml diff -u phpdoc/tr/features/remote-files.xml:1.2 phpdoc/tr/features/remote-files.xml:1.3 --- phpdoc/tr/features/remote-files.xml:1.2 Mon Dec 10 13:24:46 2001 +++ phpdoc/tr/features/remote-files.xml Mon Dec 10 13:38:22 2001 @@ -1,35 +1,35 @@ <?xml version="1.0" encoding="iso-8859-9"?> -<!-- $Revision: 1.2 $ --> +<!-- $Revision: 1.3 $ --> <chapter id="features.remote-files"> - <title>Uzaktaki Dosyalarý Kullanmak</title> + <title>Uzaktaki Dosyaları Kullanmak</title> <!-- dirge: remote file => uzak dosya --> <para> - "URL fopen wrapper" PHP derlenmeden önce aktifleþtirildiði (ki, - --disable-url-fopen-wrapper parametresini özellikle vermediðinizde + "URL fopen wrapper" PHP derlenmeden önce aktifleştirildiği (ki, + --disable-url-fopen-wrapper parametresini özellikle vermediğinizde böyledir) (4.0.3 öncesi sürümler için) veya php.ini'de - <parameter>allow_url_fopen</parameter> ayarýna off deðerini vermediðiniz + <parameter>allow_url_fopen</parameter> ayarına off değerini vermediğiniz (yeni sürümler için) sürece, HTTP ve FTP URL'lerini parametre olarak dosya ismi alan, <function>require</function> ve - <function>include</function> ifadeleri dahil, çoðu fonksiyonda kullanabilirsiniz. + <function>include</function> ifadeleri dahil, çoğu fonksiyonda kullanabilirsiniz. </para> <para> <note> <para> - Uzak dosyalarý Windows altýnda <function>include</function> ve - <function>require</function> ifadelerinde kullanamazsýnýz. + Uzak dosyaları Windows altında <function>include</function> ve + <function>require</function> ifadelerinde kullanamazsınız. </para> </note> </para> <para> - Örneðin, bunu uzaktaki bir HTTP sunucusunda olan bir dosyayý açmak, - çýktýsýný ayýklamak ve elde edilen bilgiyi bir veritabaný sorgusunda - kullanmak, ya da basitçe web sitenizin geri kalanýna uygun bir görüntüde + Örneğin, bunu uzaktaki bir HTTP sunucusunda olan bir dosyayı açmak, + çıktısını ayıklamak ve elde edilen bilgiyi bir veritabanı sorgusunda + kullanmak, ya da basitçe web sitenizin geri kalanına uygun bir görüntüde göstermek için kullanabilirsiniz. </para> <para> <example> - <title>Uzaktaki bir sayfanýn baþlýðýný almak</title> + <title>Uzaktaki bir sayfanın başlığını almak</title> <programlisting role="php"> <![CDATA[ <?php @@ -53,12 +53,12 @@ </example> </para> <para> - Ya da bunu, doðru eriþim hakkýna sahip bir kullanýcýyla baðlandýðýnýz - ve çoktan dosya varolmadýðý sürece FTP ile uzaktaki dosyalara yazmak - için kullanabilirsiniz. 'anonymous' dýþýnda bir kullanýcý olarak baðlanmak - için kullanýcýyý (ve muhtemelen parolayý) URL içine yazmalýsýnýz, örneðin - 'ftp://kullanýcý:parola@ftp.example.com/yol/dosya' gibi. (Ayný yöntemi - HTTP'de Basic Authentication'a ihtiyaç duyan dosyalara eriþmek için de + Ya da bunu, doğru erişim hakkına sahip bir kullanıcıyla bağlandığınız + ve çoktan dosya varolmadığı sürece FTP ile uzaktaki dosyalara yazmak + için kullanabilirsiniz. 'anonymous' dışında bir kullanıcı olarak bağlanmak + için kullanıcıyı (ve muhtemelen parolayı) URL içine yazmalısınız, örneğin + 'ftp://kullanıcı:parola@ftp.example.com/yol/dosya' gibi. (Aynı yöntemi + HTTP'de Basic Authentication'a ihtiyaç duyan dosyalara erişmek için de kullanabilirsiniz.) </para> <para> @@ -83,11 +83,11 @@ <para> <note> <para> - Yukarýdaki örnekten, uzaktaki bir günlüðe yazmak için nasýl bir teknik - kullanacaðýnýz konusunda bir fikir almýþsýnýzdýr, fakat önceden - belirtildiði gibi, URL fopen() sargýlarýyla sadece yeni dosyalara - yazabilirsiniz. Bunun gibi daðýtýlmýþ günlük tutmak isterseniz, - <function>syslog</function>'a bir göz atmalýsýnýz. + Yukarıdaki örnekten, uzaktaki bir günlüğe yazmak için nasıl bir teknik + kullanacağınız konusunda bir fikir almışsınızdır, fakat önceden + belirtildiği gibi, URL fopen() sargılarıyla sadece yeni dosyalara + yazabilirsiniz. Bunun gibi dağıtılmış günlük tutmak isterseniz, + <function>syslog</function>'a bir göz atmalısınız. </para> </note> </para>