İçeriğe geç

SEO sadece sonradan eklenen meta başlıklarından ibaret değildir. Sayfa hiyerarşisi, URL yapısı, iç linkleme, hız, schema ve mobil deneyim tasarım aşamasında düşünülmelidir.

Doğru başlangıç ne sağlar?

Temiz kod, anlaşılır içerik mimarisi ve hızlı açılan sayfalar hem kullanıcı deneyimini hem arama motoru görünürlüğünü destekler. Kurumsal bir site yayına çıktığı gün teknik SEO açısından hazır olmalıdır.

CRM ve operasyon panelleri, dağınık Excel dosyalarını ve manuel takip süreçlerini merkezi bir yapıya taşır. Satış, çağrı, müşteri notları, görevler ve performans ölçümleri tek ekranda yönetilebilir hale gelir.

En büyük avantajlar

Rol bazlı yetki, anlık raporlama, otomatik bildirim ve kullanıcı bazlı performans ekranları işletmenin karar alma hızını artırır. İyi planlanmış bir panel, ekibin hatasını azaltır ve yöneticinin görünürlüğünü artırır.

Özel yazılım projesinde en büyük hata, tasarıma veya koda başlamadan önce kapsamı netleştirmemektir. Projenin amacı, kullanıcı rolleri, modülleri, veri akışı ve başarı metriği yazılı hale gelirse süreç hem daha hızlı hem daha sağlıklı ilerler.

Başlamadan önce sorulacak sorular

Net kapsam, gereksiz revizyonu azaltır ve projenin ticari değerini yükseltir.

WAMP mı XAMPP mi? Mac ve Windows İçin En İyi Localhost Önerileri

Web geliştirmeye başlayan birçok kişinin aklına ilk gelen sorulardan biri şudur: WAMP mı XAMPP mi? Özellikle PHP, MySQL, WordPress veya Laravel ile çalışıyorsanız, bilgisayarınızda bir localhost ortamı kurmanız gerekir.

Localhost ortamı sayesinde projelerinizi canlı sunucuya atmadan önce kendi bilgisayarınızda test edebilirsiniz. Bu hem daha güvenlidir hem de geliştirme sürecini hızlandırır.

Peki Windows için WAMP mı XAMPP mi daha mantıklı? Mac kullanıcıları için en iyi seçenek hangisi? Gelin kısa ve net şekilde bakalım.

Localhost Nedir?

Localhost, web projelerinizi kendi bilgisayarınızda çalıştırmanızı sağlayan yerel geliştirme ortamıdır. Normalde bir web sitesinin çalışması için sunucu, veritabanı ve PHP gibi bileşenlere ihtiyaç vardır.

Localhost araçları ise bu yapıyı bilgisayarınıza kurar. Böylece internet bağlantısı olmadan bile PHP dosyalarınızı, WordPress sitelerinizi veya özel yazılım projelerinizi test edebilirsiniz.

WAMP Nedir?

WAMP, Windows işletim sistemi için hazırlanmış bir local server ortamıdır. Adındaki harfler Windows, Apache, MySQL/MariaDB ve PHP yapısını temsil eder.

WampServer, resmi sitesinde Windows üzerinde Apache2, PHP ve MySQL ile dinamik web uygulamaları geliştirmeye yarayan bir geliştirme ortamı olarak tanıtılıyor. Ayrıca phpMyAdmin ile veritabanı yönetimi de yapılabiliyor.

Yani Windows kullanıyorsanız ve sadece PHP, MySQL, WordPress gibi yapılarla çalışacaksanız WAMP gayet yeterli bir çözümdür.

XAMPP Nedir?

XAMPP, Apache Friends tarafından geliştirilen ücretsiz ve kolay kurulan bir geliştirme ortamıdır. İçinde Apache, MariaDB, PHP ve Perl bulunur. XAMPP resmi sitesinde de bu yapı “ücretsiz, kurulumu kolay Apache dağıtımı” olarak açıklanır.

XAMPP’in en güzel tarafı Windows, macOS ve Linux üzerinde çalışabilmesidir. Bu yüzden farklı işletim sistemlerinde aynı mantıkla geliştirme yapmak isteyenler için daha esnek bir seçenektir.

WAMP mı XAMPP mi?

WAMP mı XAMPP mi sorusunun cevabı aslında kullandığınız işletim sistemine ve çalışma alışkanlığınıza bağlıdır.

Windows kullanıyorsanız ve sade bir PHP geliştirme ortamı istiyorsanız WAMP tercih edilebilir. Kurulumu kolaydır, paneli basittir ve PHP projeleri için yeterlidir.

Ama Windows, Mac veya Linux arasında geçiş yapıyorsanız XAMPP daha mantıklı olabilir. Çünkü XAMPP çoklu platform desteği sunar ve farklı sistemlerde benzer bir geliştirme deneyimi sağlar.

Kısaca:

Windows kullanıyorsanız: WAMP veya XAMPP
Mac kullanıyorsanız: MAMP, XAMPP veya Laravel Herd
Laravel geliştiriyorsanız: Laravel Herd
WordPress geliştiriyorsanız: MAMP veya XAMPP
Basit PHP projeleri için: WAMP veya XAMPP

WAMP ve XAMPP Arasındaki Farklar

WAMP sadece Windows odaklıdır. XAMPP ise Windows, macOS ve Linux tarafında kullanılabilir.

WAMP daha sade bir yapı sunar. XAMPP ise daha genel amaçlıdır ve farklı işletim sistemlerinde çalıştığı için daha yaygın kullanılır.

WAMP, Windows kullanıcıları için pratik bir çözümdür. XAMPP ise özellikle eğitimlerde, PHP başlangıç derslerinde ve çoklu işletim sistemi kullanan geliştiricilerde daha fazla tercih edilir.

Mac İçin WAMP Kullanılır mı?

Hayır, WAMP temelde Windows için geliştirilmiştir. Mac kullanıcıları için WAMP yerine daha uygun seçenekler vardır.

Mac tarafında en çok tercih edilen alternatiflerden biri MAMP’tir. MAMP, macOS ve Windows bilgisayarlarda Apache, Nginx, PHP ve MySQL ile local server ortamı kurmaya yarayan ücretsiz bir çözümdür. Resmi sitesinde MAMP’in mevcut Apache kurulumunu bozmadan çalışabildiği de belirtilir.

Bu yüzden Mac kullanıyorsanız “WAMP mı XAMPP mi?” sorusuna üçüncü bir cevap daha eklenir: MAMP.

Mac İçin En İyi Localhost Önerileri

Mac kullanıyorsanız ilk önerim MAMP olur. Özellikle WordPress, klasik PHP projeleri ve MySQL tabanlı işler için gayet kullanışlıdır.

İkinci seçenek XAMPP olabilir. XAMPP, Mac üzerinde de çalıştığı için Windows’tan Mac’e geçen geliştiriciler için alışması kolaydır.

Üçüncü seçenek ise özellikle Laravel geliştiricileri için Laravel Herd olabilir. Laravel Herd, macOS için PHP, Nginx, dnsmasq ve Node.js gibi araçlarla gelen hızlı bir PHP geliştirme ortamı sunar. Resmi dokümantasyonda Herd’ün macOS üzerinde Laravel geliştirmeye başlamak için gerekli temel araçları sunduğu belirtilir.

WordPress İçin WAMP mı XAMPP mi?

WordPress geliştirme için hem WAMP hem de XAMPP kullanılabilir. Eğer Windows kullanıyorsanız ikisi de işinizi görür.

Benim önerim şu olur:

Yeni başlayan biriyseniz XAMPP daha kolay gelebilir.
Sadece Windows üzerinde çalışıyorsanız WAMP daha sade olabilir.
Mac kullanıyorsanız MAMP daha mantıklı olur.

WordPress projelerinde önemli olan sadece programı kurmak değildir. PHP sürümü, MySQL/MariaDB uyumu, dosya izinleri ve kalıcı bağlantı ayarları da düzgün yapılandırılmalıdır.

Laravel İçin WAMP mı XAMPP mi?

Laravel için WAMP veya XAMPP kullanılabilir ama günümüzde daha modern çözümler var.

Laravel geliştiriyorsanız Laravel Herd, Laragon veya Docker gibi araçlar daha profesyonel bir deneyim sunabilir. Özellikle Mac kullanıyorsanız Laravel Herd oldukça pratik bir seçenek haline geldi.

Ama yeni başlıyorsanız ve sadece PHP mantığını öğreniyorsanız XAMPP veya WAMP ile başlamak gayet yeterlidir.

Yeni Başlayanlar İçin Hangisi Daha Kolay?

Yeni başlayanlar için genelde XAMPP daha anlaşılırdır. Çünkü kurulumu basittir, çok fazla ayar istemez ve internette bolca kaynak bulunur.

WAMP da kolaydır ama sadece Windows tarafında anlamlıdır.

Mac kullanıcıları için ise MAMP daha doğal bir tercihtir. Çünkü Mac ortamında WordPress ve PHP projelerini hızlıca ayağa kaldırmak için sade bir yapı sunar.

Benim Önerim

Benim net önerim şöyle:

Windows kullanıyorsan ve basit PHP/WordPress işleri yapıyorsan: XAMPP veya WAMP

Mac kullanıyorsan ve WordPress/PHP geliştiriyorsan: MAMP

Laravel geliştiriyorsan: Laravel Herd

Daha profesyonel ve ekip çalışmasına uygun yapı istiyorsan: Docker

Kısacası “WAMP mı XAMPP mi?” sorusunun tek cevabı yok. Ama yeni başlayan biriysen XAMPP ile başlamak daha risksizdir. Windows’ta sade bir çözüm istiyorsan WAMP da gayet iş görür. Mac tarafında ise MAMP veya Laravel Herd daha mantıklı seçeneklerdir.

WAMP mı XAMPP mi sorusu, web geliştirmeye başlayan herkesin bir noktada karşısına çıkar. Eğer Windows kullanıyorsanız iki seçenek de işinizi görür. XAMPP daha yaygın ve çoklu platform destekli olduğu için yeni başlayanlar için daha avantajlı olabilir.

Mac kullanıyorsanız WAMP yerine MAMP veya Laravel Herd tercih etmek daha doğru olur. WordPress için MAMP, Laravel için Herd oldukça iyi seçeneklerdir.

En doğru seçim, hangi işletim sistemini kullandığınıza ve hangi projeler üzerinde çalıştığınıza bağlıdır. Kısaca özetlemek gerekirse: Windows’ta XAMPP veya WAMP, Mac’te MAMP, Laravel tarafında ise Herd candır. Localhost işi de böyledir kankam; doğru aracı seçersen proje yağ gibi akar, yanlış aracı seçersen Apache portuyla kavga eder durursun.

React Nasıl Kurulur? Vite ile React Arasındaki Fark Nedir?

React, modern web arayüzleri geliştirmek için kullanılan en popüler JavaScript kütüphanelerinden biridir. Özellikle tek sayfa uygulamalar, yönetim panelleri, müşteri panelleri, e-ticaret arayüzleri ve interaktif web projelerinde sıkça tercih edilir.

Ancak React öğrenmeye başlayan birçok kişinin kafası şurada karışıyor:

“React ayrı bir şey mi, Vite ayrı bir şey mi?”
“React kurarken neden Vite kullanıyoruz?”
“Create React App nerede kaldı?”

Gelin bunu kısa ve net şekilde anlatalım.

React Nedir?

React, kullanıcı arayüzü geliştirmek için kullanılan bir JavaScript kütüphanesidir. Yani butonlar, formlar, listeler, paneller, kartlar, menüler ve dinamik sayfa bölümleri gibi arayüz parçalarını daha düzenli şekilde oluşturmanızı sağlar.

React’in en güçlü tarafı, arayüzü küçük parçalara yani component yapısına bölmesidir. Örneğin bir yönetim paneli yapıyorsanız; menüyü, tabloyu, kullanıcı kartını, bildirim alanını ve formu ayrı ayrı component olarak hazırlayabilirsiniz.

Bu da projeyi daha düzenli, yönetilebilir ve geliştirilebilir hale getirir.

Vite Nedir?

Vite ise React gibi bir arayüz kütüphanesi değildir. Vite, modern frontend projeleri için kullanılan hızlı bir geliştirme ve build aracıdır.

Yani React ile uygulamanın arayüzünü yazarsınız; Vite ise bu projeyi çalıştırır, geliştirirken hızlı şekilde önizleme sunar ve proje bittiğinde yayına hazır hale getirir.

Vite’in resmi dokümantasyonunda da Vite, yeni nesil web uygulamalarını güçlendiren hızlı bir frontend build aracı olarak tanımlanır.

React ile Vite Arasındaki Fark Nedir?

En basit haliyle fark şudur:

React, arayüz geliştirmek için kullanılır.
Vite, React projesini kurmak, çalıştırmak ve build almak için kullanılır.

Yani React projenin kendisidir, Vite ise o projeyi ayağa kaldıran geliştirme ortamıdır.

Bir örnekle anlatmak gerekirse:

React = Motor
Vite = O motoru çalıştıran hızlı garaj sistemi

React olmadan arayüzü yazamazsınız. Vite olmadan da modern bir React projesini pratik şekilde geliştirmek zorlaşır.

React Nasıl Kurulur?

React kurulumu için önce bilgisayarınızda Node.js kurulu olmalıdır. Vite’in güncel dokümantasyonuna göre Vite, Node.js tarafında 20.19+ veya 22.12+ sürüm ister. Bu yüzden eski Node.js sürümü kullanıyorsanız önce güncellemeniz gerekir.

Node.js kuruluysa terminal veya komut satırını açıp şu komutu çalıştırabilirsiniz:

npm create vite@latest

Bu komuttan sonra sizden proje adı istenir. Örneğin:

proje adı: my-react-app
framework: React
variant: JavaScript veya TypeScript

Daha sonra proje klasörüne girilir:

cd my-react-app

Bağımlılıklar yüklenir:

npm install

Proje çalıştırılır:

npm run dev

Bu komuttan sonra Vite size genellikle localhost üzerinde bir adres verir. Bu adresi tarayıcıda açarak React projenizi görüntüleyebilirsiniz.

React Projesi Yayına Nasıl Hazırlanır?

React projesini canlıya almak için geliştirme modunda değil, production build almak gerekir. Vite dokümantasyonuna göre production için vite build komutu kullanılır ve proje statik hosting veya sunucu ortamında yayınlanabilecek hale getirilir.

Komut şu şekildedir:

npm run build

Bu işlemden sonra genellikle dist adında bir klasör oluşur. Yayına alınacak asıl dosyalar bu klasörün içindedir.

Create React App Kullanılıyor mu?

Eskiden React projeleri genellikle Create React App ile kuruluyordu. Ancak React ekibi, 2025 yılında Create React App’in yeni projeler için kullanımdan kaldırıldığını ve geliştiricilerin framework ya da Vite gibi build araçlarına yönelmesini önerdiğini açıkladı.

Bu yüzden günümüzde yeni bir React projesine başlarken Vite kullanmak daha modern ve mantıklı bir tercihtir.

Neden React + Vite Kullanmalıyız?

React ve Vite birlikte kullanıldığında geliştirme süreci oldukça hızlanır.

Bunun başlıca avantajları şunlardır:

Sayfalar daha hızlı çalışır.
Geliştirme sunucusu hızlı açılır.
Kod değişiklikleri anında ekrana yansır.
Proje yapısı daha sade olur.
Build işlemleri daha pratiktir.
Yeni başlayanlar için kurulum süreci daha kolaydır.

Özellikle yönetim paneli, CRM, müşteri paneli, SaaS uygulaması, e-ticaret arayüzü veya dinamik web uygulaması geliştiriyorsanız React + Vite ikilisi gayet güçlü bir başlangıçtır.

JavaScript mi TypeScript mi Seçilmeli?

Yeni başlıyorsanız JavaScript ile başlamak daha kolay olabilir. Çünkü öğrenme süreci daha sade ilerler.

Ancak büyük ve uzun vadeli bir proje geliştiriyorsanız TypeScript daha mantıklı olabilir. TypeScript, kod yazarken hataları daha erken fark etmenizi sağlar ve büyük projelerde daha düzenli bir yapı sunar.

Kısaca:

Yeni başlayanlar için JavaScript
Profesyonel ve büyük projeler için TypeScript

React Öğrenmek Zor mu?

React ilk bakışta biraz karmaşık görünebilir. Çünkü klasik HTML, CSS ve JavaScript mantığından farklı olarak component, state, props, hook ve render mantığıyla çalışır.

Ama temel yapıyı anladıktan sonra React oldukça keyifli hale gelir. Özellikle daha önce JavaScript, HTML ve CSS biliyorsanız React öğrenmek çok daha kolaydır.

React öğrenirken önce şu konulara odaklanmak gerekir:

Component yapısı
Props kullanımı
State yönetimi
useEffect mantığı
Form işlemleri
Listeleme işlemleri
API’den veri çekme
Routing yapısı
Build ve deploy işlemleri

Bu konular oturduktan sonra React ile profesyonel arayüzler geliştirmek çok daha kolay hale gelir.

React, modern web arayüzleri geliştirmek için kullanılan güçlü bir JavaScript kütüphanesidir. Vite ise React projelerini hızlı şekilde kurmak, çalıştırmak ve yayına hazırlamak için kullanılan modern bir geliştirme aracıdır.

Kısaca söylemek gerekirse:

React arayüzü oluşturur.
Vite projeyi çalıştırır.
React + Vite ise modern frontend geliştirmenin en pratik yollarından biridir.

Bugün yeni bir React projesine başlayacaksanız, eski yöntemlerle vakit kaybetmek yerine Vite ile başlamak daha doğru bir tercih olacaktır. Hem hızlıdır, hem sadedir, hem de güncel frontend dünyasına daha uygundur.

React öğrenmek isteyen biri için en güzel başlangıç şudur: küçük bir proje aç, component mantığını öğren, sonra API bağlantısı ve sayfa yönlendirme işlemlerine geç. Gerisi zaten kod yazdıkça oturur. Kod biraz nankördür ama React öğrendikçe “tamam ya bu iş güzelmiş” dedirtir.

PHP Değişkenler ve Veri Tipleri

PHP öğrenmeye başladığımızda ilk olarak dilin ne işe yaradığını, nerelerde kullanıldığını ve temel çalışma mantığını anlamamız gerekir. Bundan sonraki en önemli konu ise değişkenler ve veri tipleri konusudur.

Çünkü PHP’de neredeyse yaptığımız her işlem bir veriyle ilgilidir. Kullanıcı adı, ürün fiyatı, sipariş numarası, telefon numarası, e-posta adresi, sepet toplamı, giriş durumu, kategori listesi gibi birçok bilgiyi değişkenlerde tutarız.

Basit anlatmak gerekirse değişken, içinde veri sakladığımız kutudur. Bu kutuya bir isim veririz ve daha sonra o ismi kullanarak içindeki değere ulaşırız.

PHP’de Değişken Nedir?

PHP’de değişken, bir değeri geçici olarak saklamak için kullanılır. Değişkenler sayesinde verileri daha düzenli şekilde kullanabiliriz.

PHP’de değişkenler her zaman $ işareti ile başlar.

Örnek:

$isim = "Cantürk";
$yas = 25;
$sehir = "Ankara";

Burada üç tane değişken tanımladık:

Sonra bu değişkenleri istediğimiz yerde kullanabiliriz.

$isim = "Cantürk";

echo $isim;

Ekrana şu çıktı gelir:

Cantürk

Değişken Tanımlama Kuralları

PHP’de değişken tanımlarken bazı kurallara dikkat etmek gerekir.

Değişkenler $ işareti ile başlar:

$isim = "Ali";

Değişken isimleri harf veya alt çizgi ile başlamalıdır:

$ad = "Mehmet";
$_telefon = "05555555555";

Değişken isimleri sayı ile başlayamaz:

$1isim = "Hatalı kullanım";

Bu kullanım yanlıştır.

Doğru kullanım şöyle olabilir:

$isim1 = "Doğru kullanım";

Değişken isimlerinde Türkçe karakter kullanmamak daha sağlıklıdır. Yani $müşteriAdı yerine $musteri_adi kullanmak daha mantıklıdır.

Ben genelde şu tarz yazımı tercih ederim:

$musteri_adi = "Ahmet";
$urun_fiyati = 1499;
$toplam_tutar = 2500;

Bu hem okunur hem de ileride projeyi düzenlerken kafayı yedirmez. Kod okunabilir olmalı; çünkü kötü yazılmış kod, yazılımcının kendi kendine attığı paslı bıçaktır.

Echo ile Değişken Yazdırma

PHP’de bir değişkeni ekrana yazdırmak için echo kullanabiliriz.

$isim = "Cantürk";

echo $isim;

Birden fazla metni ve değişkeni birleştirmek için nokta . operatörü kullanılır.

$isim = "Cantürk";
$sehir = "Ankara";

echo "Benim adım " . $isim . " ve " . $sehir . " şehrinde yaşıyorum.";

Çıktı:

Benim adım Cantürk ve Ankara şehrinde yaşıyorum.

Bu yapı PHP’de çok sık kullanılır. Özellikle kullanıcıya özel mesajlar, ürün bilgileri veya dinamik içerikler oluştururken işimize yarar.

PHP’de Veri Tipleri Nelerdir?

Veri tipi, bir değişkenin içinde tuttuğu değerin türünü ifade eder.

PHP’de en çok kullanılan veri tipleri şunlardır:

String
Integer
Float
Boolean
Array
Null
Object

Bu derste temel olanları basitçe anlatalım.

String Veri Tipi

String, metinsel verileri ifade eder. Yani yazı, kelime, cümle, telefon numarası, e-posta gibi değerler string olabilir.

Örnek:

$isim = "Cantürk";
$email = "info@example.com";
$telefon = "05555555555";

Burada değerler tırnak içinde yazıldığı için string olarak değerlendirilir.

String değerler çift tırnak veya tek tırnak ile yazılabilir.

$ad = "Cantürk";
$soyad = 'Çelikok';

İkisi de çalışır. Ama çift tırnak içinde değişken kullanımı daha esnektir.

Örnek:

$isim = "Cantürk";

echo "Merhaba $isim";

Çıktı:

Merhaba Cantürk

Tek tırnakta ise değişken doğrudan çalışmaz:

$isim = "Cantürk";

echo 'Merhaba $isim';

Çıktı:

Merhaba $isim

Bu yüzden basit kullanımda çift tırnak daha rahat olabilir.

Integer Veri Tipi

Integer, tam sayı değerleri ifade eder.

Örnek:

$yas = 25;
$stok_adedi = 150;
$siparis_no = 1024;

Integer değerler tırnak içinde yazılmaz. Çünkü bunlar metin değil, sayıdır.

Yanlış demeyelim ama farklı anlam taşır:

$yas = "25";

Bu değer string olarak tutulur. Ama şu integer olur:

$yas = 25;

Matematiksel işlemler yapacaksan sayıları tırnaksız kullanmak daha doğru olur.

Float Veri Tipi

Float, ondalıklı sayıları ifade eder.

Örnek:

$fiyat = 149.90;
$kdv_orani = 20.5;
$indirim = 7.75;

E-ticaret, muhasebe, fatura ve fiyat hesaplama gibi işlemlerde float değerler sık kullanılır.

Örnek:

$urun_fiyati = 1000;
$kdv_orani = 0.20;

$kdv_tutari = $urun_fiyati * $kdv_orani;
$toplam = $urun_fiyati + $kdv_tutari;

echo $toplam;

Çıktı:

1200

Burada ürün fiyatına yüzde 20 KDV ekledik.

Boolean Veri Tipi

Boolean, sadece iki değer alır:

true
false

Yani doğru veya yanlış.

Örnek:

$aktif = true;
$giris_yapti = false;

Boolean genellikle koşul kontrollerinde kullanılır.

Örnek:

$giris_yapti = true;

if ($giris_yapti) {
    echo "Panele hoş geldiniz.";
} else {
    echo "Lütfen giriş yapınız.";
}

Çıktı:

Panele hoş geldiniz.

Bu yapı özellikle giriş sistemlerinde çok kullanılır. Kullanıcı giriş yaptı mı, hesap aktif mi, sipariş ödendi mi, ürün stokta mı gibi kontroller boolean ile yapılabilir.

Array Veri Tipi

Array, yani dizi, birden fazla değeri tek değişkende saklamak için kullanılır.

Örnek:

$renkler = ["Kırmızı", "Mavi", "Yeşil"];

Bu dizide 3 değer var. Dizi elemanlarına sıra numarasıyla ulaşabiliriz.

$renkler = ["Kırmızı", "Mavi", "Yeşil"];

echo $renkler[0];

Çıktı:

Kırmızı

Dizilerde sıralama 0’dan başlar:

0 = Kırmızı
1 = Mavi
2 = Yeşil

Yani ilk eleman her zaman 0 numaralı elemandır.

Anahtar Değer Dizileri

PHP’de dizileri sadece sıra numarasıyla değil, anahtar-değer mantığıyla da kullanabiliriz.

Örnek:

$kullanici = [
    "isim" => "Cantürk",
    "email" => "info@example.com",
    "rol" => "Yönetici"
];

echo $kullanici["isim"];

Çıktı:

Cantürk

Bu yapı gerçek projelerde çok kullanılır. Mesela veritabanından bir kullanıcı bilgisi çektiğinde genellikle buna benzer bir yapı ile çalışırsın.

Örnek:

$musteri = [
    "ad" => "Ahmet",
    "soyad" => "Yılmaz",
    "telefon" => "05555555555",
    "sehir" => "İstanbul"
];

echo $musteri["ad"] . " " . $musteri["soyad"];

Çıktı:

Ahmet Yılmaz

Null Veri Tipi

Null, değişkenin boş olduğunu ifade eder.

Örnek:

$sonuc = null;

Bu değişken var ama içinde bir değer yoktur.

Null özellikle şu durumlarda kullanılır:

Örnek:

$telefon = null;

if ($telefon == null) {
    echo "Telefon bilgisi girilmemiş.";
}

Çıktı:

Telefon bilgisi girilmemiş.

Değişkenlerle Matematiksel İşlemler

PHP’de değişkenlerle matematiksel işlemler yapabiliriz.

$sayi1 = 10;
$sayi2 = 5;

$toplam = $sayi1 + $sayi2;
$cikarma = $sayi1 - $sayi2;
$carpma = $sayi1 * $sayi2;
$bolme = $sayi1 / $sayi2;

echo $toplam;

Çıktı:

15

PHP’de temel matematik operatörleri şunlardır:

+  Toplama
-  Çıkarma
*  Çarpma
/  Bölme
%  Mod alma

Mod alma işlemi, bölümden kalanı verir.

$sayi = 10;

echo $sayi % 3;

Çıktı:

1

Çünkü 10’un 3’e bölümünden kalan 1’dir.

String Birleştirme

PHP’de metinleri birleştirmek için nokta . kullanılır.

$ad = "Cantürk";
$soyad = "Çelikok";

echo $ad . " " . $soyad;

Çıktı:

Cantürk Çelikok

Araya boşluk koymak istiyorsan " " eklemelisin.

Yanlış kullanım:

echo $ad . $soyad;

Çıktı şöyle olur:

CantürkÇelikok

Doğru kullanım:

echo $ad . " " . $soyad;

Değişken Değerini Güncelleme

Bir değişkenin değeri sonradan değiştirilebilir.

$durum = "Beklemede";

$durum = "Onaylandı";

echo $durum;

Çıktı:

Onaylandı

Çünkü değişkenin son değeri geçerlidir.

Bu yapı özellikle sipariş durumu, kullanıcı durumu, ödeme durumu gibi alanlarda kullanılır.

Değişkenin Tipini Öğrenme

PHP’de bir değişkenin tipini öğrenmek için gettype() fonksiyonu kullanılabilir.

$isim = "Cantürk";
$yas = 25;
$fiyat = 149.90;
$aktif = true;

echo gettype($isim);
echo gettype($yas);
echo gettype($fiyat);
echo gettype($aktif);

Çıktılar şu şekilde olabilir:

string
integer
double
boolean

Float değerler PHP’de bazen double olarak görünebilir. Bu normaldir.

Var Dump Nedir?

var_dump() bir değişkenin hem değerini hem de tipini gösterir.

Örnek:

$isim = "Cantürk";

var_dump($isim);

Çıktı:

string(7) "Cantürk"

Dizileri kontrol ederken de çok işe yarar.

$kullanici = [
    "isim" => "Cantürk",
    "rol" => "Yönetici"
];

var_dump($kullanici);

Geliştirme yaparken var_dump() bayağı hayat kurtarır. Yazılımcının röntgen cihazı gibi düşünebilirsin. İçeride ne var direkt gösterir.

Sabit Değişken Nedir?

PHP’de değişmeyen değerler için sabit tanımlanabilir.

Bunun için define() kullanılır.

define("SITE_ADI", "Cantürk Çelikok");

echo SITE_ADI;

Çıktı:

Cantürk Çelikok

Sabitlerde $ işareti kullanılmaz.

Sabitler genellikle şu tarz bilgiler için kullanılabilir:

Site adı
Site URL
Versiyon numarası
Sabit ayarlar
API adresi

Örnek:

define("SITE_URL", "https://canturkcelikok.com");
define("VERSION", "1.0.0");

Değişken İsimlendirme Nasıl Olmalı?

Temiz kod yazmak için değişken isimleri anlaşılır olmalıdır.

Kötü örnek:

$a = "Ahmet";
$b = 1500;
$c = true;

Bu kod çalışır ama okunması zordur.

Daha doğru örnek:

$musteri_adi = "Ahmet";
$siparis_tutari = 1500;
$odeme_durumu = true;

Bu şekilde kodu okuyan kişi değişkenin ne işe yaradığını hemen anlar.

Benim önerim, PHP’de Türkçe karakter kullanmadan açıklayıcı değişken isimleri yazman:

$kullanici_adi
$musteri_email
$urun_fiyati
$siparis_durumu
$toplam_tutar
$kdv_orani

Bu yapı hem sade hem de anlaşılırdır.

Basit Bir Örnek: Ürün Fiyatı Hesaplama

Şimdi küçük bir örnek yapalım.

$urun_adi = "Kablosuz Mouse";
$urun_fiyati = 500;
$kdv_orani = 0.20;

$kdv_tutari = $urun_fiyati * $kdv_orani;
$toplam_fiyat = $urun_fiyati + $kdv_tutari;

echo "Ürün Adı: " . $urun_adi . "<br>";
echo "Ürün Fiyatı: " . $urun_fiyati . " TL<br>";
echo "KDV Tutarı: " . $kdv_tutari . " TL<br>";
echo "Toplam Fiyat: " . $toplam_fiyat . " TL";

Çıktı:

Ürün Adı: Kablosuz Mouse
Ürün Fiyatı: 500 TL
KDV Tutarı: 100 TL
Toplam Fiyat: 600 TL

Bu örnek küçük ama gerçek projelerdeki mantığın aynısıdır. E-ticaret sitelerinde, fatura sistemlerinde, teklif modüllerinde veya muhasebe panellerinde bu tarz hesaplamalar sürekli yapılır.

Basit Bir Örnek: Kullanıcı Bilgisi Gösterme

$kullanici = [
    "ad" => "Cantürk",
    "soyad" => "Çelikok",
    "email" => "info@example.com",
    "rol" => "Yönetici"
];

echo "Ad Soyad: " . $kullanici["ad"] . " " . $kullanici["soyad"] . "<br>";
echo "E-posta: " . $kullanici["email"] . "<br>";
echo "Rol: " . $kullanici["rol"];

Çıktı:

Ad Soyad: Cantürk Çelikok
E-posta: info@example.com
Rol: Yönetici

Bu tarz array kullanımı, kullanıcı profili veya admin paneli geliştirirken çok işimize yarar.

PHP’de En Sık Yapılan Değişken Hataları

PHP öğrenirken değişkenlerle ilgili bazı hatalar çok sık yapılır.

1. Dolar İşaretini Unutmak

Yanlış:

isim = "Cantürk";

Doğru:

$isim = "Cantürk";

2. Tırnakları Yanlış Kullanmak

Yanlış:

$isim = Cantürk;

Doğru:

$isim = "Cantürk";

Metinsel değerler tırnak içinde yazılmalıdır.

3. Değişken Adını Farklı Yazmak

$isim = "Cantürk";

echo $ısim;

Burada $isim ile $ısim aynı değildir. Türkçe karakter yüzünden hata yaşanabilir. Bu yüzden değişkenlerde Türkçe karakter kullanmamak en iyisidir.

4. Nokta Yerine Artı Kullanmak

JavaScript’ten gelen biri bazen metin birleştirirken + kullanabilir.

Yanlış:

echo $ad + " " + $soyad;

Doğru:

echo $ad . " " . $soyad;

PHP’de string birleştirme için nokta kullanılır.

Değişkenleri Anlamak PHP’nin Temelidir

PHP’de değişkenler ve veri tipleri en temel konulardan biridir. Bu konuyu iyi anlamadan form işlemleri, veritabanı kayıtları, kullanıcı giriş sistemi veya admin paneli geliştirmek zorlaşır.

Değişkenler sayesinde verileri saklarız, işleriz ve kullanıcıya gösteririz. String ile metinleri, integer ile tam sayıları, float ile ondalıklı sayıları, boolean ile doğru/yanlış değerleri, array ile birden fazla veriyi yönetebiliriz.

PHP öğrenirken bu konuyu sadece okuyup geçmemek gerekir. Küçük küçük örnekler yaparak değişkenlerin nasıl çalıştığını görmek en doğru yöntemdir.

Benim önerim şu: Birkaç tane basit örnek dosya oluştur. Kullanıcı bilgisi yazdır, ürün fiyatı hesapla, KDV ekle, array ile müşteri bilgisi göster. Bu tarz küçük pratikler ileride büyük projelerde çok işine yarar.

PHP’de sağlam temel atmak istiyorsan değişkenler, veri tipleri ve basit işlemler konusunu iyi öğrenmelisin. Çünkü bu konu PHP’nin alfabesi gibidir. Alfabeyi çözdükten sonra cümle kurmak çok daha kolay olur.


Sıkça Sorulan Sorular

PHP’de değişken nedir?

PHP’de değişken, veri saklamak için kullanılan yapıdır. Değişkenler $ işareti ile başlar ve metin, sayı, dizi veya boolean gibi farklı değerler tutabilir.

PHP’de değişken nasıl tanımlanır?

PHP’de değişken $ işareti ile tanımlanır. Örneğin $isim = "Cantürk"; şeklinde bir değişken oluşturulabilir.

PHP’de string nedir?

String, metinsel veri tipidir. İsim, e-posta, telefon numarası veya herhangi bir yazı string olarak tutulabilir.

PHP’de array nedir?

Array, birden fazla değeri tek değişkende saklamak için kullanılan veri tipidir. Liste veya anahtar-değer şeklinde kullanılabilir.

PHP’de boolean nedir?

Boolean, sadece true veya false değerlerini alabilen veri tipidir. Genellikle koşul kontrollerinde kullanılır.

Güvenilir Proxy Nereden Alınır?

Proxy kullanırken en önemli konu, güvenilir ve bilinen servisleri tercih etmektir. Ücretsiz proxy servisleri genellikle yavaş, kararsız ve güvenlik açısından riskli olabilir. Bu yüzden SEO analizi, yazılım testi, reklam doğrulama veya veri toplama gibi profesyonel işlemlerde ücretli ve güvenilir proxy sağlayıcıları kullanılmalıdır.

Önerilen Proxy Servisleri

IPRoyal
Başlangıç seviyesi ve orta ölçekli kullanım için tercih edilebilir. Residential, ISP ve datacenter proxy seçenekleri sunar. SEO kontrolü, web otomasyonları ve lokasyon bazlı testler için kullanılabilir. IPRoyal’ın sitesinde residential proxy tarafında geniş IP havuzu ve GB bazlı fiyatlandırma seçenekleri yer alıyor.
Link: https://iproyal.com/

Webshare
Uygun fiyatlı proxy arayanlar için iyi bir alternatiftir. Datacenter, residential ve static residential proxy seçenekleri bulunur. Küçük projeler, test işlemleri ve basit otomasyonlar için tercih edilebilir. Webshare’in fiyatlandırma sayfasında residential proxy ve datacenter proxy seçenekleri ayrı ayrı sunuluyor.
Link: https://www.webshare.io/

Decodo / Smartproxy
Daha profesyonel kullanım için tercih edilebilir. Smartproxy, 2025 yılında Decodo adıyla yeniden markalandı; aynı altyapı ve ekip ile hizmet verdiğini açıklıyor. Residential proxy, datacenter proxy ve scraping çözümleri sunar.
Link: https://decodo.com/

Oxylabs
Kurumsal ve büyük ölçekli projeler için güçlü proxy servislerinden biridir. Residential proxy, datacenter proxy ve web scraping çözümleri sunar. Oxylabs, residential proxy tarafında 175 milyondan fazla IP ve şehir bazlı hedefleme seçeneklerinden bahsediyor.
Link: https://oxylabs.io/

Bright Data
Geniş IP havuzu, gelişmiş proxy yönetimi ve kurumsal kullanım senaryoları için öne çıkan servislerden biridir. Residential proxy, datacenter proxy, mobile proxy ve veri toplama çözümleri sunar. Bright Data, residential proxy ağında HTTP/S ve SOCKS5 desteği sunduğunu belirtiyor.
Link: https://brightdata.com/

SOAX
Residential, mobile, ISP ve datacenter proxy seçeneklerini tek panelden sunan servislerden biridir. Lokasyon bazlı testler, SEO analizleri ve veri toplama projeleri için tercih edilebilir. SOAX fiyatlandırma tarafında proxy türleri ve Web Data API kullanımını aynı plan içinde sunar.
Link: https://soax.com/

Hangi Proxy Servisi Tercih Edilmeli?

Yeni başlayanlar için IPRoyal veya Webshare daha pratik olabilir. Daha profesyonel ve uzun vadeli projeler için Decodo, Oxylabs, Bright Data veya SOAX tercih edilebilir.

SEO sıralama kontrolü, lokasyon bazlı test ve basit bot testleri için residential proxy daha doğal sonuçlar verir. Yüksek hız gereken işlemlerde datacenter proxy tercih edilebilir. Uzun süre aynı IP ile işlem yapılması gerekiyorsa ISP veya static residential proxy daha mantıklı olabilir.

Proxy Kullanırken Dikkat Edilmesi Gerekenler

Proxy kullanımı mutlaka yasal ve etik sınırlar içinde yapılmalıdır. Başka sistemlere zarar vermek, spam göndermek, izinsiz veri toplamak veya güvenlik önlemlerini kötüye kullanmak doğru değildir.

Profesyonel kullanım için proxy alırken şu noktalara dikkat edilmelidir:

IP havuzu geniş mi?
Türkiye veya hedef ülke lokasyonu var mı?
HTTP, HTTPS ve SOCKS5 desteği sunuyor mu?
Panel kullanımı kolay mı?
Kota ve fiyatlandırma net mi?
Destek ekibi ulaşılabilir mi?
Servis kullanım kuralları açık mı?

Sonuç

Proxy, doğru servis seçildiğinde yazılım geliştirme, SEO analizi, reklam doğrulama, pazar araştırması ve güvenlik testleri için oldukça faydalı bir teknolojidir. Ancak ücretsiz ve bilinmeyen proxy servisleri yerine, güvenilir sağlayıcılar tercih edilmelidir.

Yeni başlayanlar için IPRoyal ve Webshare daha kolay bir başlangıç sunarken, daha büyük ve kurumsal projelerde Decodo, Oxylabs, Bright Data ve SOAX gibi servisler daha güçlü çözümler sağlayabilir.

Proxy Nedir?

Proxy, internet bağlantınız ile ziyaret ettiğiniz web sitesi arasında aracı olarak çalışan bir sunucudur. Yani siz bir web sitesine doğrudan bağlanmak yerine, önce proxy sunucusuna bağlanırsınız; proxy de sizin yerinize hedef siteye erişir.

Bu sistem sayesinde gerçek IP adresiniz gizlenebilir, farklı lokasyonlardan bağlantı yapılabilir ve internet üzerindeki bazı işlemler daha kontrollü şekilde gerçekleştirilebilir.

Proxy Ne İşe Yarar?

Proxy en temel haliyle bağlantınızı farklı bir IP adresi üzerinden yönlendirmeye yarar. Bu nedenle özellikle yazılım, SEO, veri analizi ve güvenlik testleri gibi alanlarda sıkça tercih edilir.

Proxy kullanım alanları kısaca şunlardır:

IP adresini gizlemek
Farklı ülke veya şehirden bağlantı yapmak
SEO sıralamalarını farklı lokasyonlardan kontrol etmek
Web scraping ve veri toplama işlemleri yapmak
Bot ve otomasyon sistemlerini test etmek
Reklam doğrulama ve pazar araştırması yapmak
Güvenlik analizleri gerçekleştirmek

Proxy Nerelerde Kullanılır?

Proxy sistemleri özellikle SEO uzmanları, yazılımcılar, dijital pazarlama ekipleri ve veri analizi yapan kişiler tarafından kullanılır.

Örneğin bir SEO uzmanı, Google arama sonuçlarını farklı ülkelerden görmek için proxy kullanabilir. Bir yazılımcı ise geliştirdiği botun farklı IP adresleriyle nasıl çalıştığını test etmek için proxy tercih edebilir.

Proxy Kullanırken Nelere Dikkat Edilmeli?

Proxy kullanırken güvenilir servisler tercih edilmelidir. Ücretsiz proxy servisleri genellikle yavaş, güvensiz ve kararsız olabilir. Bu nedenle özellikle profesyonel projelerde kaliteli ve güvenilir proxy sağlayıcıları kullanılmalıdır.

Ayrıca proxy kullanımı, yasal sınırlar içinde ve etik kurallara uygun şekilde yapılmalıdır. Başka sistemlere zarar vermek, izinsiz veri toplamak veya spam amaçlı kullanım doğru değildir.

PHP’ye Giriş

Yazılım dünyasına yeni başlayan birçok kişi ilk olarak HTML, CSS ve JavaScript ile tanışır. Ancak işin içine veritabanı, kullanıcı girişi, form işlemleri, panel sistemleri, ürün yönetimi veya dinamik web siteleri girdiğinde karşımıza güçlü bir dil çıkar: PHP.

PHP, özellikle web geliştirme tarafında uzun yıllardır kullanılan, öğrenmesi nispeten kolay ve çok yaygın bir programlama dilidir. Bugün hâlâ milyonlarca web sitesi, WordPress, WooCommerce, özel yazılım panelleri, CRM sistemleri ve yönetim panelleri PHP ile çalışmaktadır.

Benim gözümde PHP, web yazılıma başlamak isteyen biri için en mantıklı dillerden biridir. Çünkü hem öğrenmesi kolaydır hem de kısa sürede gerçek bir proje ortaya çıkarmanı sağlar. Yani “kod yazıyorum ama ne işe yarıyor?” hissini çok fazla yaşatmaz. Direkt sonuç alırsın.

PHP Nedir?

PHP, sunucu tarafında çalışan bir programlama dilidir. İngilizce açılımı eski kullanımda Personal Home Page olarak geçse de günümüzde daha çok PHP: Hypertext Preprocessor şeklinde bilinir.

Basitçe anlatmak gerekirse PHP, web sitesinin arka tarafında çalışan ve sayfaları dinamik hale getiren dildir.

Örneğin bir web sitesinde:

büyük ihtimalle arka planda PHP veya benzeri bir sunucu dili çalışıyordur.

PHP Ne İşe Yarar?

PHP ile statik bir web sitesini dinamik hale getirebilirsin. Yani sadece düz HTML sayfaları göstermek yerine, kullanıcıya göre değişen içerikler oluşturabilirsin.

PHP ile yapılabilecek bazı işler şunlardır:

Kısacası PHP, web sitesinin beyni gibi çalışır. HTML iskelet, CSS kıyafet, JavaScript hareket ise PHP de arka plandaki mantıktır.

PHP Nasıl Çalışır?

PHP kodları tarayıcıda doğrudan çalışmaz. PHP, sunucuda çalışır ve sonucunda tarayıcıya genellikle HTML çıktısı gönderir.

Yani süreç basitçe şöyledir:

  1. Kullanıcı bir sayfaya girer.
  2. Sunucu PHP dosyasını çalıştırır.
  3. PHP gerekli işlemleri yapar.
  4. Sonuç olarak HTML üretir.
  5. Tarayıcı bu HTML’i kullanıcıya gösterir.

Mesela sen index.php dosyasına girdin diyelim. Tarayıcı PHP kodunu görmez. Sadece PHP’nin ürettiği sonucu görür.

PHP Dosya Uzantısı Nedir?

PHP dosyalarının uzantısı genellikle .php olur.

Örnek:

<code>
index.php
login.php
register.php
urunler.php
baglanti.php
</code>

Bir dosyanın içinde PHP kodu çalıştırmak istiyorsan dosya uzantısının .php olması gerekir. HTML dosyasına PHP yazarsan normal şartlarda çalışmaz.

PHP Kodları Nasıl Yazılır?

PHP kodları şu etiketler arasına yazılır:

<code>
<?php
// PHP kodları buraya yazılır
?>
</code>

Basit bir örnek:

<code>
<?php
echo "Merhaba Dünya";
?>
</code>

Bu kod ekrana şu yazıyı basar:

<code>
Merhaba Dünya
</code>

Echo Nedir?

PHP’de echo, ekrana çıktı vermek için kullanılır.

Yani kullanıcıya bir yazı, değişken veya HTML kodu göstermek istiyorsan echo kullanabilirsin.

Örnek:

<code>
<?php
echo "PHP öğreniyorum";
?>
</code>

Çıktı:

<code>
PHP öğreniyorum
</code>

HTML ile birlikte de kullanılabilir:

<code>
<?php
echo "<h1>PHP’ye Giriş</h1>";
?>
</code>

Bu kod ekranda bir başlık oluşturur.

Değişken Nedir?

Değişken, veri saklamak için kullanılır. PHP’de değişkenler $ işareti ile başlar.

Örnek:

<code>
<?php
$isim = "Cantürk";
$yas = 25;

echo $isim;
?>
</code>

Burada $isim değişkeninin içinde "Cantürk" değeri vardır.

PHP’de değişken isimleri genellikle şöyle yazılır:

<code>
$isim
$soyisim
$telefon
$email
$urun_fiyati
$toplam_tutar
</code>

Değişkenler sayesinde verileri daha sonra kullanabiliriz. Mesela kullanıcı adı, ürün fiyatı, sipariş numarası gibi bilgiler değişkenlerde tutulabilir.

Veri Tipleri Nelerdir?

PHP’de farklı veri tipleri vardır. En temel olanlar şunlardır:

String

Metinsel veridir.

<code>
$isim = "Cantürk";
</code>

Integer

Tam sayıdır.

<code>
$yas = 25;
</code>

Float

Ondalıklı sayıdır.

<code>
$fiyat = 149.90;
</code>

Boolean

Doğru veya yanlış değeridir.

<code>
$aktif = true;
</code>

Array

Birden fazla veriyi tutar.

<code>
$renkler = ["Kırmızı", "Mavi", "Yeşil"];
</code>

PHP’de Yorum Satırı Nedir?

Yorum satırları, kodun çalışmasını etkilemeyen açıklamalardır. Kodun ne işe yaradığını anlatmak için kullanılır.

Tek satırlık yorum:

<code>
// Bu bir yorum satırıdır
<code>

Çok satırlı yorum:

<code>
/*
Bu bölüm
çok satırlı
yorum alanıdır
*/
</code>

Yorum satırları özellikle büyük projelerde çok işe yarar. Çünkü birkaç ay sonra kendi yazdığın koda bakınca bile “Ben burada ne yapmışım?” diyebilirsin. Yazılımcının hafızası bazen RAM gibi, elektrik gidince uçuyor.

If Else Nedir?

if else, koşul kontrolü yapmak için kullanılır.

Yani “eğer bu doğruysa şunu yap, değilse bunu yap” mantığıdır.

Örnek:

<code>
<?php
$yas = 18;

if ($yas >= 18) {
    echo "Giriş yapabilirsiniz.";
} else {
    echo "Yaşınız uygun değil.";
}
?>
</code>

Burada yaş 18 veya daha büyükse ekrana “Giriş yapabilirsiniz.” yazar. Değilse “Yaşınız uygun değil.” yazar.

Döngü Nedir?

Döngüler, bir işlemi tekrar tekrar yapmak için kullanılır.

Mesela ekrana 1’den 10’a kadar sayı yazdırmak istiyorsun. Tek tek echo yazmak yerine döngü kullanırsın.

For Döngüsü

<code>
<?php
for ($i = 1; $i <= 10; $i++) {
    echo $i . "<br>";
}
?>
</code>

Bu kod 1’den 10’a kadar sayıları ekrana yazdırır.

While Döngüsü

<code>
<?php
$sayi = 1;

while ($sayi <= 5) {
    echo $sayi . "<br>";
    $sayi++;
}
?>
</code>

Bu da 1’den 5’e kadar sayı yazar.

Array Nedir?

Array, yani dizi, birden fazla veriyi tek değişkende saklamak için kullanılır.

Örnek:

<code>
<?php
$meyveler = ["Elma", "Armut", "Muz"];

echo $meyveler[0];
?>
</code>

Çıktı:

<code>
Elma
</code>

Dizilerde sayma genellikle 0’dan başlar. Yani:

<code>
0 = Elma
1 = Armut
2 = Muz
</code>

Bir de anahtar-değer mantığında kullanılan diziler vardır:

<code>
<?php
$kullanici = [
    "isim" => "Cantürk",
    "email" => "info@example.com",
    "rol" => "Yönetici"
];

echo $kullanici["isim"];
?>
</code>

Bu yapı özellikle veritabanından gelen kullanıcı bilgilerini işlerken çok kullanılır.

Fonksiyon Nedir?

Fonksiyon, belirli bir işi yapan kod bloğudur.

Aynı kodu tekrar tekrar yazmak yerine fonksiyon oluştururuz ve ihtiyaç oldukça çağırırız.

Örnek:

<code>
<?php
function selamVer() {
    echo "Merhaba, PHP dünyasına hoş geldin!";
}

selamVer();
?>
</code>

Parametre alan fonksiyon örneği:

<code>
<?php
function selamla($isim) {
    echo "Merhaba " . $isim;
}

selamla("Cantürk");
?>
</code>

Çıktı:

<code>
Merhaba Cantürk
</code>

Fonksiyonlar projeyi daha düzenli ve yönetilebilir hale getirir.

Form İşlemleri Nedir?

PHP’nin en çok kullanıldığı alanlardan biri form işlemleridir. Mesela kullanıcıdan ad, soyad, e-posta veya mesaj almak istiyorsan HTML formu ve PHP birlikte çalışır.

Basit HTML formu:

<code>
<form method="post" action="gonder.php">
    <input type="text" name="isim" placeholder="İsminiz">
    <button type="submit">Gönder</button>
</form>
</code>

PHP tarafı:

<code>
<?php
$isim = $_POST["isim"];

echo "Merhaba " . $isim;
?>
</code>

Burada kullanıcı formu gönderdiğinde, PHP bu bilgiyi alır ve işler.

GET ve POST Nedir?

PHP’de form veya URL üzerinden veri almak için genellikle GET ve POST kullanılır.

GET

Veriler URL üzerinden gönderilir.

Örnek URL:

<code>
site.com/urun.php?id=5
</code>

PHP ile alma:

<code>
<?php
$id = $_GET["id"];
echo $id;
?>
</code>

POST

Veriler arka planda gönderilir. Genellikle formlarda kullanılır.

<code>
<?php
$email = $_POST["email"];
echo $email;
?>
</code>

Genel mantık şu:

PHP ve Veritabanı İlişkisi

PHP’nin en güçlü taraflarından biri veritabanı ile çalışabilmesidir. Genellikle MySQL veya MariaDB ile birlikte kullanılır.

Veritabanında şu tarz bilgiler tutulabilir:

PHP bu verileri veritabanından çeker, işler ve kullanıcıya gösterir.

Örneğin bir e-ticaret sitesinde ürünler tek tek HTML içine yazılmaz. Ürünler veritabanında tutulur. PHP bu ürünleri çeker ve sayfada listeler.

PHP ile MySQL Bağlantısı

Basit bir veritabanı bağlantısı şu şekilde yapılabilir:

<code>
<?php
$baglanti = mysqli_connect("localhost", "kullanici_adi", "sifre", "veritabani_adi");

if (!$baglanti) {
    die("Veritabanı bağlantısı başarısız: " . mysqli_connect_error());
}

echo "Veritabanı bağlantısı başarılı.";
?>
</code>

Genelde bu bağlantı ayrı bir dosyada tutulur.

Örnek:

<code>
baglanti.php
</code>

Sonra diğer sayfalarda bu dosya çağırılır:

<code>
<?php
include "baglanti.php";
?>
</code>

Bu sayede her dosyada tekrar tekrar bağlantı kodu yazmak zorunda kalmazsın.

Include ve Require Nedir?

PHP’de başka bir dosyayı mevcut dosyaya dahil etmek için include veya require kullanılır.

Örnek:

<code>
<?php
include "header.php";
include "footer.php";
?>
</code>

Bu yöntem özellikle tema yapılarında çok kullanılır.

Mesela:

<code>
header.php
footer.php
sidebar.php
baglanti.php
menu.php
</code>

Bu parçaları ayrı dosyalara bölerek proje daha düzenli hale getirilir.

include dosya bulunamazsa uyarı verir ama çalışmaya devam eder.
require dosya bulunamazsa hata verir ve çalışmayı durdurur.

PHP Öğrenmeye Nereden Başlanmalı?

PHP öğrenmek isteyen biri önce temel mantığı anlamalıdır. Direkt büyük projeye dalmak biraz kafa karıştırabilir.

Bence doğru öğrenme sırası şöyle olmalı:

  1. PHP yazım kuralları
  2. Değişkenler
  3. Veri tipleri
  4. If else koşulları
  5. Döngüler
  6. Diziler
  7. Fonksiyonlar
  8. Form işlemleri
  9. GET ve POST kullanımı
  10. Veritabanı bağlantısı
  11. CRUD işlemleri
  12. Session ve kullanıcı girişi
  13. Basit admin paneli
  14. Güvenlik önlemleri

Bu sırayla gidildiğinde PHP çok daha rahat öğrenilir.

CRUD Nedir?

PHP öğrenirken çok sık duyacağın kavramlardan biri de CRUD’dur.

CRUD şu işlemleri ifade eder:

<code>
Create = Ekleme
Read = Okuma / Listeleme
Update = Güncelleme
Delete = Silme
</code>

Mesela bir müşteri yönetim paneli yapıyorsan:

Bu işlemleri öğrendiğinde artık birçok basit paneli geliştirebilir hale gelirsin.

Session Nedir?

Session, kullanıcıya ait bilgileri geçici olarak sunucuda saklamak için kullanılır.

Örneğin kullanıcı giriş yaptıktan sonra her sayfada tekrar tekrar giriş yapmasın diye session kullanılır.

Basit örnek:

<code>
<?php
session_start();

$_SESSION["kullanici_adi"] = "Cantürk";

echo $_SESSION["kullanici_adi"];
?>
</code>

Session özellikle giriş sistemlerinde çok önemlidir.

PHP Güvenliği Neden Önemlidir?

PHP öğrenirken sadece çalışan kod yazmak yetmez. Güvenli kod yazmayı da öğrenmek gerekir.

Dikkat edilmesi gereken bazı konular:

Mesela kullanıcı şifresi veritabanına düz şekilde kaydedilmemelidir. Bunun yerine password_hash() kullanılmalıdır.

Örnek:

<code>
<?php
$sifre = "123456";
$hashli_sifre = password_hash($sifre, PASSWORD_DEFAULT);

echo $hashli_sifre;
?>
</code>

Giriş kontrolünde de password_verify() kullanılır.

PHP Hâlâ Kullanılır mı?

Evet, PHP hâlâ aktif olarak kullanılan güçlü bir dildir. Özellikle WordPress, WooCommerce, Laravel, özel paneller, CRM sistemleri ve birçok web uygulaması PHP ile çalışır.

“PHP öldü” diyenler genelde ya PHP’yi eski usul kodlarla hatırlıyor ya da sosyal medyada fazla vakit geçiriyor. Gerçekte ise PHP hâlâ ciddi projelerde kullanılan, hızlı geliştirilebilen ve geniş ekosisteme sahip bir dildir.

Tabii modern PHP yazmak önemlidir. Eski, karışık, güvensiz PHP kodları yerine daha düzenli, güvenli ve okunabilir kod yazmak gerekir.

PHP Öğrenmek Zor mu?

Bence PHP öğrenmek zor değil. Özellikle HTML ve CSS bilen biri için PHP’ye geçmek oldukça mantıklıdır.

Başta şu konular biraz karışık gelebilir:

Ama bunlar pratik yaptıkça oturur. PHP öğrenmenin en iyi yolu küçük projeler yapmaktır.

Örneğin:

Bu tarz projelerle PHP mantığı çok daha hızlı gelişir.

Sonuç: PHP Web Yazılım İçin Güçlü Bir Başlangıçtır

PHP, web yazılım öğrenmek isteyenler için hâlâ çok güçlü bir başlangıç noktasıdır. Öğrenmesi kolay, kaynakları bol, kullanımı yaygın ve gerçek projelere hızlıca uygulanabilir bir dildir.

PHP ile basit bir formdan başlayıp zamanla admin paneli, CRM sistemi, e-ticaret altyapısı veya özel yazılım projeleri geliştirebilirsin.

Önemli olan sadece kodları ezberlemek değil, mantığını anlamaktır. Değişken ne işe yarar, formdan veri nasıl gelir, veritabanına nasıl kayıt atılır, kullanıcı girişi nasıl yapılır gibi temel konuları öğrendiğinde PHP tarafında ciddi bir ilerleme kaydedersin.

Kısacası PHP, web yazılım dünyasına giriş yapmak isteyen biri için gayet sağlam bir tercihtir. Doğru öğrenme sırası ve bol pratikle kısa sürede gerçek projeler geliştirmek mümkündür.


Sıkça Sorulan Sorular

PHP nedir?

PHP, web sitelerinin sunucu tarafında çalışan bir programlama dilidir. Dinamik web sayfaları, admin panelleri, formlar, üyelik sistemleri ve veritabanı işlemleri için kullanılır.

PHP öğrenmek zor mu?

PHP öğrenmek zor değildir. Özellikle HTML ve CSS bilen kişiler için PHP’ye başlamak daha kolaydır. Temel kavramlar öğrenildikten sonra küçük projelerle pratik yapmak gerekir.

PHP ile neler yapılabilir?

PHP ile blog sistemi, admin paneli, kullanıcı giriş sistemi, e-ticaret sitesi, CRM yazılımı, fatura sistemi, API ve özel web yazılımları geliştirilebilir.

PHP için veritabanı gerekli mi?

Basit işlemler için şart değildir ama dinamik projelerde genellikle veritabanı kullanılır. PHP çoğunlukla MySQL veya MariaDB ile birlikte çalışır.

PHP hâlâ kullanılıyor mu?

Evet, PHP hâlâ yaygın şekilde kullanılmaktadır. WordPress, WooCommerce, Laravel ve birçok özel web uygulaması PHP altyapısı ile çalışır.


Telefon sistemleri, çağrı merkezleri, santral altyapıları ve VoIP çözümleriyle ilgileniyorsanız bir noktada mutlaka FCT cihazları ile karşılaşırsınız. Ben de santral, VoIP, çağrı merkezi ve yazılım entegrasyonları tarafında çalışırken FCT cihazlarının aslında ne kadar kritik bir köprü görevi gördüğünü daha net fark ettim.

Basit anlatmak gerekirse FCT cihazı, GSM hattını klasik telefon sistemi veya IP tabanlı santral altyapısıyla konuşturan cihazdır. Yani elinizde bir SIM kart vardır, bu SIM kart üzerinden çağrı almak veya çağrı yapmak istersiniz; FCT cihazı bu GSM hattını santral, analog telefon ya da VoIP altyapısına bağlayarak kullanılabilir hale getirir.

FCT, İngilizce Fixed Cellular Terminal ifadesinin kısaltmasıdır. Kaynaklarda FCT cihazlarının, sabit telefon ya da santral sistemlerinin GSM ağı üzerinden arama yapmasını ve arama almasını sağladığı belirtilir.

FCT Cihazı Ne İşe Yarar?

FCT cihazlarının temel amacı, GSM hattı ile telefon sistemi arasında bağlantı kurmaktır. Normalde bir SIM kart cep telefonunda kullanılır. Fakat işletmeler, çağrı merkezleri veya santral kullanan yapılar her zaman cep telefonu üzerinden manuel çağrı yönetmek istemez. İşte burada FCT cihazları devreye girer.

Bir FCT cihazı sayesinde:

Yani FCT cihazı, teknik olarak küçük görünse de işletme iletişimi tarafında bayağı stratejik bir parçadır. Hele bir de çağrı yoğunluğu yüksek bir yapı varsa, doğru FCT kullanımı hem maliyet hem de yönetim açısından ciddi avantaj sağlayabilir.

FCT, GSM Gateway ve VoIP Gateway Aynı Şey mi?

Burada kavramlar bazen birbirine karışıyor. FCT cihazı, GSM Gateway, GSM VoIP Gateway veya IP FCT gibi isimler aynı ailede değerlendirilebilir. Aralarında teknik farklar olabilir ama genel mantık benzerdir: GSM şebekesi ile telefon/santral/VoIP sistemi arasında bağlantı kurmak.

Bazı kaynaklarda GSM Gateway cihazları; VoIP ağları, sabit telefon ağları ve mobil GSM/3G/4G ağları arasında çağrı yönlendirmeyi sağlayan donanımlar olarak tanımlanır.

Klasik analog FCT cihazları genellikle bir analog telefon veya santralin analog portuna bağlanır. IP tabanlı FCT veya GSM Gateway cihazları ise SIP/VoIP desteğiyle IP santrallere bağlanabilir. VoIP FCT cihazlarının GSM şebekeleri ile IP ağlar arasında dönüştürücü görevi gördüğü üretici açıklamalarında da açıkça belirtilir.

FCT Cihazlarının Kullanım Alanları

FCT cihazları sadece tek bir sektöre hitap eden cihazlar değildir. İletişim ihtiyacı olan birçok işletmede kullanılabilir. Özellikle telefon trafiği yoğun olan yapılarda daha fazla anlam kazanır.

1. Çağrı Merkezleri

Çağrı merkezlerinde gelen ve giden aramalar merkezi bir sistem üzerinden yönetilir. Eğer çağrıların bir kısmı GSM hatları üzerinden yapılacaksa FCT cihazları burada önemli rol oynar.

Örneğin bir çağrı merkezi, santral üzerinden müşteri araması yapmak istiyor olabilir. Çağrıları doğrudan GSM hattı üzerinden çıkarmak için FCT veya GSM Gateway kullanılabilir. Böylece agentlar cep telefonu kullanmadan, sistem üzerinden çağrı gerçekleştirebilir.

Bu yapı özellikle benim Call Server gibi çağrı, agent yönetimi, kayıt ve dosya takibi üzerine düşündüğüm sistemlerde çok önemli. Çünkü burada amaç sadece arama yapmak değil; aramanın kim tarafından, ne zaman, hangi dosya için yapıldığını da kayıt altına almak.

2. Şirket Santralleri

Bir işletmenin mevcut PBX ya da IP PBX santrali varsa, FCT cihazı bu santrale GSM hattı eklemek için kullanılabilir. Böylece şirket, sabit hat dışında GSM hattı üzerinden de çağrı alıp gönderebilir.

Bazı FCT modelleri PBX, telefon cihazı veya VoIP FXO gateway gibi sistemlerle kullanılabilecek FXS portları sunar.

Bu kullanım özellikle şubeli işletmeler, saha ekipleri olan firmalar ve yoğun müşteri iletişimi yapan şirketler için avantajlıdır.

3. Hukuk Büroları ve Tahsilat Sistemleri

Hukuk bürolarında, özellikle icra ve takip süreçlerinde yoğun telefon trafiği olur. Borçlu aramaları, dosya bilgilendirmeleri, ödeme hatırlatmaları ve çağrı kayıtları gibi süreçler düzenli yönetilmek zorundadır.

Bu tarz yapılarda FCT cihazları, GSM hatlarını santral sistemine dahil ederek daha kontrollü bir çağrı altyapısı kurulmasını sağlar. Burada önemli olan sadece arama yapmak değil, çağrıyı sistemle ilişkilendirmektir.

Mesela bir dosya ekranından arama başlatıldığında, aramanın hangi dosya ile bağlantılı olduğunu bilmek büyük avantajdır. FCT cihazları da bu iletişim kanalının GSM tarafındaki köprüsüdür.

4. Kırsal veya Sabit Hat Olmayan Noktalar

Her lokasyonda sabit telefon hattı veya kaliteli internet bağlantısı bulunmayabilir. Böyle durumlarda GSM tabanlı çözümler daha mantıklı hale gelir.

FCT cihazı ile SIM kart üzerinden telefon hattı oluşturulabilir. Bu yapı; şantiye, depo, geçici ofis, kırsal işletme, saha operasyon noktası gibi yerlerde pratik çözüm sunar.

5. Oteller, Bankalar ve Kurumsal Ofisler

FCT cihazları sadece çağrı merkezlerinde değil; oteller, bankalar, üretim tesisleri, kurumsal ofisler ve benzeri yapılarda da kullanılabilir. Üretici kaynaklarında FCT cihazlarının çağrı merkezi, kurumsal ofis, banka, otel ve benzeri işletmelerde kullanım alanı bulduğu belirtilir.

Bu sektörlerde iletişim kesintisiz olmalıdır. Alternatif bir GSM çıkışı, özellikle yedek hat veya özel yönlendirme senaryoları için avantaj sağlar.

FCT Cihazlarının İşletmelere Sağladığı Avantajlar

FCT cihazlarının en büyük avantajı, farklı iletişim ağlarını bir araya getirmesidir. İşletme tarafında bunun karşılığı daha esnek, daha yönetilebilir ve çoğu zaman daha ekonomik iletişim altyapısıdır.

Maliyet Avantajı

GSM yönüne yapılan çağrılarda, doğru tarife ve doğru yönlendirme ile maliyet avantajı sağlanabilir. Özellikle Least Cost Routing yani en düşük maliyetli rota mantığıyla çalışan sistemlerde, çağrı hangi hattan daha uygun çıkacaksa o kanala yönlendirilebilir.

VoIP GSM Gateway kaynaklarında da bu cihazların IP, dijital, analog ve GSM ağları arasında doğrudan yönlendirme yapabildiği ve özellikle IP’den GSM’e yapılan çağrılarda maliyeti azaltmak için kullanılabildiği anlatılır.

Tabii burada “her zaman kesin ucuzdur” demek doğru olmaz. Çünkü operatör tarifesi, kullanım şekli, çağrı yoğunluğu ve yasal/operatör politikaları önemlidir. Ama doğru kurulumda maliyet kontrolü açısından FCT cihazları ciddi katkı sağlar.

Esneklik

FCT cihazı ile sadece sabit hatta bağlı kalmazsınız. GSM hattı olan her yerde telefon iletişimi kurulabilir. Bu da özellikle geçici lokasyonlar, mobil operasyonlar veya yedek iletişim senaryoları için kullanışlıdır.

Santral Entegrasyonu

İşletmelerin en sevdiği taraf burasıdır. Çünkü FCT cihazı, GSM hattını santralin bir parçası haline getirir. Gelen çağrı bir dahiliye düşebilir, giden çağrı sistemden yapılabilir, çağrı kayıt altına alınabilir ve raporlanabilir.

Yedeklilik

İnternet veya sabit hat tarafında sorun yaşandığında GSM hattı yedek kanal olarak kullanılabilir. Bu özellikle çağrı kaçırmaması gereken işletmeler için önemlidir.

Merkezi Yönetim

GSM hatlarını tek tek telefonlarda kullanmak yerine santral üzerinden yönetmek daha profesyonel bir çözümdür. Hangi agent arama yaptı, hangi numara arandı, çağrı ne kadar sürdü gibi bilgiler sistem tarafında takip edilebilir.

FCT Cihazı Seçerken Nelere Dikkat Edilmeli?

FCT cihazı alırken sadece “çalışıyor mu?” diye bakmak yetmez. Kullanım amacına göre doğru cihaz seçmek gerekir.

1. Analog mu IP Tabanlı mı?

Eğer klasik analog santral veya analog telefon kullanacaksanız basit bir GSM FCT cihazı yeterli olabilir. Ama IP PBX, Asterisk, FreePBX, Issabel veya özel VoIP altyapısı kullanıyorsanız IP tabanlı GSM Gateway daha doğru seçim olur.

2. Kaç Kanal Gerekiyor?

Tek hat için tek SIM’li cihaz yeterli olabilir. Ama çağrı merkezi gibi yapılarda aynı anda birden fazla çağrı yapılacaksa çok kanallı GSM Gateway gerekir.

Piyasada 2, 4, 8, 16, 32 kanal gibi farklı seçenekler bulunur. Örneğin OpenVox’un bazı kablosuz gateway modellerinde GSM/CDMA/LTE/VoLTE desteği ve 32 kanala kadar yapı sunulduğu görülür.

3. SIP Desteği Var mı?

VoIP santral kullanıyorsanız SIP desteği kritik konudur. Cihazın SIP trunk olarak çalışabilmesi, IP santrale düzgün kayıt olabilmesi ve codec uyumluluğu önemlidir.

4. Sinyal Kalitesi

GSM hattı kullanıldığı için sinyal kalitesi doğrudan çağrı kalitesini etkiler. Anten çıkışı, harici anten desteği ve cihazın konumlandırılması önemlidir.

5. Operatör ve Hat Uyumluluğu

Her cihaz her operatörle sorunsuz çalışmayabilir. 2G, 3G, 4G, LTE veya VoLTE desteği kullanım senaryosuna göre kontrol edilmelidir. Günümüzde mümkünse LTE/VoLTE destekli cihazlara bakmak daha mantıklı olabilir.

6. Loglama ve Yönetim Paneli

Kurumsal kullanımda cihazın web arayüzü, çağrı logları, yönlendirme ayarları, SIM durumu ve sinyal bilgisi gibi detayları gösterebilmesi büyük avantajdır.

FCT Cihazları ve VoIP Santral İlişkisi

VoIP santral tarafında FCT cihazlarının önemi daha da artıyor. Çünkü artık birçok işletme klasik telefon santrali yerine IP tabanlı çözümlere geçiyor. Asterisk, FreePBX, Issabel, 3CX veya özel yazılmış çağrı merkezi panellerinde GSM hattını sisteme dahil etmek için GSM Gateway mantığı kullanılabiliyor.

Bu yapı sayesinde:

Benim açımdan FCT cihazlarının en değerli tarafı da tam olarak burası. Çünkü yazılım tarafında bir çağrı altyapısı kurduğunuzda, cihaz sadece donanım olmaktan çıkıyor; sistemin iletişim omurgasının parçası haline geliyor.

FCT Cihazları Güvenli mi?

FCT cihazları doğru yapılandırıldığında güvenli ve verimli şekilde kullanılabilir. Ama yanlış yapılandırılmış bir GSM Gateway, dışarıdan yetkisiz aramalara, açık SIP portlarına veya kötüye kullanıma sebep olabilir.

Bu yüzden şu konulara dikkat etmek gerekir:

Özellikle çağrı merkezi, toplu arama veya ticari iletişim tarafında kullanılan hatların operatör sözleşmeleri, KVKK ve ilgili elektronik haberleşme kuralları dikkate alınmalıdır. Burası “cihazı taktım çalıştı” kadar basit düşünülmemeli. Teknik kurulum kadar mevzuat ve kullanım amacı da önemlidir.

FCT Cihazlarının Dezavantajları Var mı?

Elbette var. Hiçbir teknoloji tek başına kusursuz değil.

Örneğin GSM sinyali zayıfsa çağrı kalitesi düşebilir. Operatör tarafında kısıtlama varsa hat kullanımı sorun çıkarabilir. Ucuz ve kalitesiz cihazlarda kopma, yankı, gecikme veya kayıt problemleri yaşanabilir. Çok yoğun çağrı trafiği için yanlış kanal sayısı seçilirse sistem tıkanabilir.

Bu yüzden FCT cihazı seçerken sadece fiyatına bakmak bence büyük hata. Kullanım senaryosuna göre doğru cihazı seçmek gerekir. Çağrı merkezi için alınacak cihazla küçük ofis için alınacak cihaz aynı seviyede olmak zorunda değildir.

FCT Cihazları Kimler İçin Uygun?

FCT cihazları özellikle şu kişi ve işletmeler için uygundur:

Eğer işletmenin telefon trafiği yoğunsa ve bu trafiği daha kontrollü yönetmek istiyorsanız FCT cihazları kesinlikle incelenmesi gereken çözümlerden biridir.

Sonuç: FCT Cihazları Küçük Bir Donanım Değil, İletişim Köprüsüdür

FCT cihazları dışarıdan bakıldığında sadece SIM kart takılan basit cihazlar gibi görünebilir. Ama işin içine santral, VoIP, çağrı merkezi, CRM, çağrı kaydı ve raporlama girdiğinde bu cihazların değeri çok daha net anlaşılır.

Benim gözümde FCT cihazları, GSM dünyası ile yazılım/santral dünyası arasında köprü kuran önemli donanımlardır. Doğru seçildiğinde işletmelere maliyet avantajı, esneklik, merkezi yönetim ve yedek iletişim imkanı sağlar.

Özellikle çağrı merkezi, hukuk takip sistemi, tahsilat operasyonu veya yoğun müşteri iletişimi olan yapılarda FCT cihazları ciddi fark yaratabilir. Ama burada kritik nokta şu: Cihazı rastgele almak yerine ihtiyaca göre seçmek, güvenli yapılandırmak ve santral/yazılım tarafıyla doğru entegre etmek gerekir.

Kısacası FCT cihazı sadece bir telefon aksesuarı değildir. Doğru sistemin içinde kullanıldığında işletmenin iletişim altyapısını daha güçlü, daha yönetilebilir ve daha profesyonel hale getiren stratejik bir parçadır.