1
0
mirror of https://github.com/php/doc-tr.git synced 2026-03-24 07:12:18 +01:00
Files
archived-doc-tr/chapters/intro.xml
2024-10-29 13:52:16 +03:00

219 lines
9.9 KiB
XML
Raw Permalink Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
<?xml version="1.0" encoding="UTF-8"?>
<!-- EN-Revision: 77f5f3b3a8bbe1ad7727201c7603d1419dd7840f Maintainer: nilgun Status: ready -->
<!-- CREDITS: tpug -->
<chapter xml:id="introduction" xmlns="http://docbook.org/ns/docbook" xmlns:xlink="http://www.w3.org/1999/xlink">
<info>
<titleabbrev>Giriş</titleabbrev>
<title>PHP nedir ve ne yapabilir?</title>
</info>
<section xml:id="intro-whatis" annotations="chunk:false">
<title>PHP nedir?</title>
<para>
<acronym>PHP</acronym> (açılımı <emphasis>PHP: Hypertext
Preprocessor</emphasis>) geniş bir kitle tarafından kullanılan, özellikle
sanal yöreler üzerinde geliştirme için tasarlanmış HTML içine gömülebilen
bir betik dilidir.
</para>
<para>
Tamam da, bu tam olarak ne anlama gelmektedir? Bir örnek:
</para>
<para>
<example>
<title>- Başlangıç olarak bir örnek</title>
<programlisting role="php">
<![CDATA[
<!DOCTYPE html>
<html>
<head>
<title>Örnek</title>
</head>
<body>
<?php
echo "Merhaba, ben bir PHP betiğiyim!";
?>
</body>
</html>
]]>
</programlisting>
</example>
</para>
<para>
Bir PHP betiğinin Perl ya da C gibi dillerden ne kadar farklı bir yapıda
olduğuna dikkat edilmelidir. HTML kodu oluşturmak için bir sürü kod
yazmak yerine, istenen işi yapan bir PHP kodu yazılır ve HTML kodunun
içine gömülür (bu örnekte, yapılan iş ekrana yazı yazmak). PHP kodu
<link linkend="language.basic-syntax.phpmode"><code>&lt;?php</code> ve
<code>?&gt;</code> özel başlangıç ve bitiş etiketleri</link> arasına
yazılır. Bu etiketler "PHP kipine" rahatlıkla girip çıkabilmeyi
sağlar.
</para>
<para>
PHP&apos;yi Javascript gibi kullanıcı tarafında çalışan dillerden ayıran,
sunucu tarafında çalıştırılıyor olmasıdır. Yukardaki örnekteki kodu
kendi sunucunuzda çalıştırırsanız, sitenize bağlanan kullanıcılar kodu
göremeyecekler ve müdahale edemeyecekler, yalnızca sonucu
görebileceklerdir. Dilerseniz HTTP sunucunuzu bütün HTML dosyalarınızı
PHP dosyası olarak görüp işleyecek hale bile getirebilirsiniz. Buna
rağmen kullanıcılar sizin gerçekte sunucu taraflı bir uygulama
kullandığınızı fark edemeyebilir.
</para>
<para>
PHP kullanmanın en güzel yanlarından biri, yeni kullanıcılar için
öğreniminin oldukça kolay olması ve aynı zamanda profesyonel kullanıcılar
için ileri seviyede özellikler içermesidir. PHP&apos;nin özellikler
listesi uzun da olsa okunmalıdır. Kısa sürede PHP ile programlamaya
başlanabilir ve birkaç saat içersinde basit programlar yazmaya
başlanabilir.
</para>
<para>
PHP&apos;nin gelişimi sunucu-taraflı programlamaya odaklanmışsa da, çok
daha fazlasının yapılmasına olanak tanıyan araçlara da sahiptir. <link
linkend="intro-whatcando">PHP neler yapabilir?</link> bölümünde bu
araçlar hakkında daha fazla bilgiye ulaşılabilir. Eğer yalnızca site
programlaması yapılacaksa, <link linkend="tutorial">Basit bir
eğitmen</link> bölümünden devam edilebilir.
</para>
</section>
<section xml:id="intro-whatcando" annotations="chunk:false">
<title>PHP neler yapabilir?</title>
<para>
Her şeyi. PHP temel olarak sunucu-taraflı programlamaya odaklanmıştır,
bu nedenle CGI uygulamalarının yaptığı her şey, örneğin formdan veri
toplama, dinamik sayfa içeriği oluşturma, ya da çerez alıp gönderme gibi
işlemler yapılabilir. Ancak PHP bunlardan çok daha fazlasını
yapabilecek yetenektedir.
</para>
<para>
PHP betiklerinin kullanıldığı başlıca iki alan vardır.
<itemizedlist>
<listitem>
<simpara>
Sunucu-taraflı programlama. Bu PHP için en geleneksel ve en temel
olan alandır. Sunucu-taraflı programlama için üç şey
gerekir: PHP çözümleyici (CGI ya da sunucu modülü), bir HTTP sunucusu
ve bir tarayıcı. PHP programlamada deneyimli olanlar tüm bunları
evindeki makinede çalıştırabilir. <link
linkend="install">Yapılandırma ve Kurulum</link> bölümünden bununla
ilgili daha fazla bilgiye ulaşılabilir.
</simpara>
</listitem>
<listitem>
<simpara>
Komut satırı uygulamaları. Bir PHP uygulaması komut satırından
hiçbir sunucu ya da tarayıcı uygulaması kullanmadan
çalıştırılabilir. Burada tek gereksinim PHP çözümleyicidir.
Bu tür kullanım <command>cron</command> üzerinden (Windows eşdeğeri
görev yöneticisi) düzenli çalıştırılan işlemler ya da basit metin
işleme görevleri için idealdir.
<link linkend="features.commandline">PHP&apos;nin komut
satırında kullanımı</link> bölümünde daha ayrıntılı bilgiye
ulaşılabilir.
</simpara>
</listitem>
</itemizedlist>
</para>
<para>
PHP bütün büyük işletim sistemlerinde, Linux, birçok Unix türevi (HP-UX,
Solaris, OpenBSD vb.), Microsoft Windows, MacOS, RISC OS dahil olmak
üzere çok çeşitli platformlarda <link linkend="install">çalışabilir</link>.
PHP benzer biçimde bugün yaygın biçimde kullanılan HTTP sunucularının büyük
kısmını destekler. Bunlara Apache, IIS ve daha birçok sunucu örnek
gösterilebilir. Bunlara FastCGI PHP çalıştırılabilirini kullanan lighttpd
ve nginx gibi sunucular da dahildir. PHP modül olarak kullanılabildiği gibi
bir CGI işleyici olarak da çalıştırılabilir.
</para>
<para>
Sonuç olarak, PHP ile işletim sistemi ve HTTP sunucusu seçme özgürlüğü
gelir. Dahası, hangi programlama yönteminin kullanılacağına, işlevsel
yaklaşımın mı yoksa nesne yönelimli yaklaşımın mı yoksa her ikisinin birden
mi kullanılacağına bile karar verilebilir.
</para>
<para>
PHP'nin yetenekleri yalnızca HTML çıktı üretmekle sınırlı değildir.
Örneğin, görüntüler ve PDF dosyaları gibi zengin çeşitlilikte dosya
türünün çıktılanması, veri şifreleme, epostaların gönderilmesi ve daha
pek işlem PHP'nin yetenekleri arasındadır. Aynı şekilde JSON ya da XML
gibi her türden metin tabanlı dosyayı oluşturabilmek mümkündür. PHP bu
dosyaları otomatik olarak oluşturabilir ve ekrana yazdırmanın yanında
dosya sisteminde saklayabilir, böylece dinamik içerik için
sunucu-taraflı bir depo sistemini kullanıma sunabilir.
</para>
<para>
PHP&apos;nin en güçlü ve en çok üstünde durulan özelliklerinden biri,
sahip olduğu <link linkend="refs.database">geniş ve gelişmiş
veritabanı</link> desteğidir. Veritabanlarına özgü eklentilerden birini
(örn. <link linkend="book.mysqli">mysql</link>) kullanarak veya <link
linkend="book.pdo">PDO</link> gibi bir soyutlama katmanı kullanarak PHP ile
veritabanı bağlantılı site sayfaları oluşturmak ya da <link
linkend="book.uodbc">ODBC</link> eklentisi üzerinden bu standardı
destekleyen bir bağlantı açmak son derece basittir. Diğer veritabanları için
<link linkend="book.curl">cURL</link> eklentisi veya <link
linkend="book.sockets">soketler</link> (CouchDB gibi) kullanılabilir.
</para>
<para>
PHP, farklı hizmetlerle LDAP, IMAP, SNMP, NNTP, POP3, HTTP, COM
(Windows için) ve daha sayısız protokol aracılığıyla iletişim kurabilecek
bir altyapıya da sahiptir. Hazır modüllerin haricinde ham ağ soketleri
ıp bu soketler üzerinden istediğiniz bütün protokollerle
çalışabilirsiniz. PHP, WDDX üzerinden sanal olarak sanal doku üzerinde
hangi dilde yazılmış olursa olsun tüm uygulamalarla haberleşebilir.
Ayrıca Java nesnelerinin oluşturulabilmesi ve şeffaf biçimde PHP
nesneleri olarak kullanılabilmeleri önemli bir diğer özelliktir.
</para>
<para>
PHP oldukça faydalı <link linkend="refs.basic.text">belge işleme</link>
özelliklerine sahiptir. Bu yelpaze Genişletilmiş POSIX ya da Perl düzenli
ifade komutlarından (<link linkend="book.pcre">PCRE</link>)
<link linkend="refs.xml">XML dosyalarını okumaya ve çözümlemeye</link> kadar
uzanır. PHP tüm XML uzantılarını <link linkend="book.libxml">libxml2</link>
tabanında tek bir standartta toplamış ve
<link linkend="book.simplexml">SimpleXML</link> ile
<link linkend="book.xmlreader">XMLReader</link> ve
<link linkend="book.xmlwriter">XMLWriter</link> desteğini de bünyesine
katarak sunduğu imkan yelpazesini genişletmiştir.
</para>
<para>
<link linkend="extensions">Alfabetik</link> olarak ve
<link linkend="funcref">sınıflandırılarak</link> belgelenmiş daha pek çok
ilginç eklenti vardır. Bunlara ek olarak
<link xlink:href="&url.xdebug;">XDebug</link> gibi PHP kılavuzu içinde
belgelenmiş ya da belgelenmemiş
<link linkend="install.pecl.intro">PECL</link> eklentileri de mevcuttur.
</para>
<para>
Görüldüğü üzere bu sayfa PHP&apos;nin sunabileceği bütün
özellikleri ve faydaları anlatabilmek için yeterli değil. <link
linkend="install">Yapılandırma ve Kurulum</link> bölümünde ve <link
linkend="funcref">İşlev başvuru kılavuzu</link>nda listelenen
eklentilerin başlangıç bölümlerindeki açıklamalardan her bir eklenti için
daha fazla bilgiye ulaşılabilir.
</para>
</section>
</chapter>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->