İlginizi Çekebilir
  1. Ana Sayfa
  2. PHP

PHP Programlamada Gerekli Bilgiler #1

PHP Programlamada Gerekli Bilgiler #1
PHP-Programlamada-Gerekli-Bilgiler-#1
+ - 0

Merhaba, PHP Programlamada Gerekli Bilgiler yazım ile PHP derslerine devam ediyorum. Bu derste sizlere PHP programlama yaparken bize gerekli olacak bir bilgi vermek istiyorum. PHP programlama yaparken çok sık kullanacağımız terimler, komutlar vs vereceğim. Anlamlarını veya kullanım amaçları da yer alacaktır.

 

PHP Programlamada Gerekli Bilgiler

Öncelikle PHP hakkında hap bilgiler vermek istiyorum.

PHP Hakkında Hap Bilgiler  – < ?PHP   ?>

PHP programlama dili HTML ile iç içe kodlanan bir dildir. Yani PHP kodları ile HTML etiketleri üretebilirsiniz. PHP ile HTML etiketlerine css ataması yapabilirsiniz. Hatta dinamik HTML etiketlerine dinamik CSS ‘ler atayabilirsiniz.

PHP kodlarımız php etiketi arasına yazılır.

<?php

echo "Hello World!";

?>

 

Kod Import Etmek – INCLUDE, INCLUDE_ONCE , REQUIRE, REQUIRE_ONCE

Birkaç sayfanızda kullanacağınız bir parçayı fiziksel olarak başka bir dosyada tutup kullanmak istediğiniz sayfalara import edebilirsiniz. Burada bahsettiğimiz import, bir dosyayı kopyalayarak başka bir dosyanın istediğimiz noktasına yapıştırmak ibarettir.  Ancak gerçekte kodlar fiziksel olarak ayrı dosyalarda hatta klasörlerde olabilir. Kodlaması ve okuması kolay olsun diye bir parça kodu birçok sayfaya ekleyebiliyoruz.

Bir dosya tamamen importlardan ibaret olabilir ve o sayfayı browser’dan açtığımızda tamamlanmış bir sayfa görebiliriz.

Daha net anlatabilmek için şöyle tarif edeyim.

Bir web sitesi yapıyoruz. Anasayfa, hakkımızda, iletişim sayfaları var. Şimdi bu her sayfa header ve footer kısımları var değil mi? Header’da logo, menü vs olurken, footerda da bağlantılar ve copyright metni felan oluyor. Şimdi bu iki parçayı her sayfada tekrar tekrar kullanmak yerine header.php ve footer.php diye iki farklı dosyaya alarak, ana sayfaların ilgili noktalarına import ederiz. Ancak browser’dan sağ tık incele dediğinizde ilgili kodlar yerli yerinde görünür. O kodlar sanki o sayfadaymış gibi. Biz onları ayrı görürüz ama çalıştığında yerli yerinde görünür.

Bunu da include veya require ile yapıyoruz. İkiside aynı işi yapıyor. Bunlara olarak da include_once ve require_once komutlarımızda var.

Bu ikisi arasındaki fark şöyledir. include ile bir kodu 5 kere import edebilirsiniz ama include_once ile sadece bir kere import edilir. Sayfaya bir parçayı include_once ile 5 kere import etsenizde sadece ilki eklenir diğerleri görmezden gelinir. Aralarındaki fark budur.

Şimdi elimizde 4 dosya olsun.

index.php, content.php, footer.php ve header.php

header.php sitemizin üst alanı logo menü vs.

content.php sitemizin orta alanı içerikler vs.

footer.php sitemizin alt alanı kısa tanıtım, diğer linkler vs.

index.php dosyasında da sadece importlar olsun.

index.php dosyamı aşağıdaki gibi olacaktır. İndex.php çalıştırıldığında diğer parçalarda yer alan kodlar index.php içerisine kopyalanmış olacaktır.

<?php
include("C:\wamp64\www\Ders3\header.php");
include("C:\wamp64\www\Ders3\content.php");
include("C:\wamp64\www\Ders3\footer.php");
?>

NOT: Bu dosyalar github ders3 klasöründe yer almayacaktır. Sadece tarifi güçlendirmek amaçlıdır.

 

Tanımlamalar Yapmak  – DEFINE

Çok sık kullanacağımız ifadeleri önceden tanımlamak isteyebiliriz. Örneğin img klasörünün yolu veya yukarıda bahsettiğimiz parçaların yer aldığı klasörün yolunu… Bu tanımlamalar bize güzel koalylıklar sağlıyorlar.

Tanımlama yapabilmek için define() komutunu kullanıyoruz. Hadi yukarıdaki ders3 klasörünün yolunun tanımlamasını yapıp tekrar kullanalım.

 <?php
 define("DERS3",  "C:\wamp64\www\Ders3\\");
include(DERS3."header.php");
include(DERS3."content.php");
include(DERS3."footer.php");
?>

NOT: PHP de stringleri birlşetirmek için ( . ) nokta kullanılır.

Gördüğünüz gibi Ders3 klasörünün yolunu DERS3 olarak tanımladık ve sayfanın geri kalanında kullandık. Buna farklı tanımlamalar yapabilirsiniz. Yani sadece klasör yolu tanımlama amacı yoktur. Yukarıdaki örnekte klasör yolu yazan 2. parametreye her şeyi koyabilirsiniz. Site url ‘si veya başka herhangi bir şey…

 

SUPER GLOBALS (SÜPER KÜRESELLER) – $_SERVER[ “XX” ]

PHP bir çok $_SERVER tanımlaması var ama ben hepsini anlatmayacağım. En çok kullanacağınızı düşündüğüm şeyleri anlatacağım. Diğerlerini siz araştırırsınız.

$_SERVER[“DOCUMENT_ROOT”] = C:/wamp64/www
Sunucunun ayar dosyasında da tanımlandığı gibi, geçerli betiğin altında çalıştığı belge kök dizinidir.

$_SERVER[“REQUEST_URI”] = /Ders3/index.php?parametre=deneme&par2=dnm2
Sayfaya erişim için belirtilen URI; örneğin, /index.html.

$_SERVER[“PHP_SELF”] = /Ders3/index.php
Çalıştırılmakta olan betiğin, belge kök dizinine göreli dosya adıdır.

$_SERVER[“SERVER_NAME”] = localhost
Geçerli betiğin altında çalıştığı sunucunun adıdır. Eğer betik bir sanal konak üzerinde çalışıyorsa, o sanal konağın adını içerir. Bu kod bir sitede çalışırsa örneğin www.mustafabukulmez.com gibi sadece mustafabukulmez ‘ i verir. www. ve .com gibi parçaları vermez.

$_SERVER[“REQUEST_METHOD”] = GET
Sayfaya erişim için kullanılan istek yöntemi; GET, HEAD, POST, PUT gibi.

$_SERVER[“QUERY_STRING”] = parametre=deneme&par2=deneme2
Sadece URL deki parametreleri verir.

$_SERVER[“REMOTE_ADDR”] = ::1
Geçerli sayfayı görüntüleyen kullanıcının IP adresidir. Localde çalışınca 127.0.0.1 olduğu için bunun kısaltması olan ::1 veriyor.

Evet en çok kullanacaklarımızı yukarıda görebilirsiniz.

 

SESSION ve COOKIE

SESSION = Oturum ($_SESSION), birden çok sayfada kullanılacak bilgileri (değişkenlerde) depolamanın bir yoludur.

SESSION kullanabilmek için session_start(); metodunu çağırmamız gerekmektedir. Session’u silmek içinde unset() metodunu kullanıyoruz. Aşağıda görebilirsiniz.

session_start();
$_SESSION["asd"] = "denemeee";
echo '$_SESSION["asd"] = ' . $_SESSION['asd'];
unset($_SESSION["asd"]);

COOKIE = Çerez, sunucunun kullanıcının bilgisayarına yerleştirdiği küçük bir dosyadır.

COOKIE kullanabilmek için önce setcookie() metodu ile yeni cookie tanımlamamız gerekiyor. Aşağıda tanımlamaları görebilirsiniz.

// cookie ekler
setcookie("deneme", "mustafabukulmez", time() + (86400 * 30), "/"); // 86400 = 1 gün

// cookie siler
setcookie("deneme", "mustafabukulmez", time() -1, "/"); // Zamanı geçmiş olur. Böylece silinir.

Cookie silme işlemi de  setcookie ile yapılır ancak zamanı geçmiş bir tarih verilir. Yukarıda gördüğünüz gibi time diyerek şimdiki zamanı aldık ve -1 ekledik. Böylece zamanı geçmiş oldu.

 

Bu ders de bu kadar arkadaşlar. Geliştirdiğim 1 ve geliştirmekte olduğum diğer ticari projede en çok kullandığım komutlar bu şekildeydi. Bu gibi sık kullanılanlar yazılarının devamı gelebileceği için buna #1 dedim.


PHP Programlamada Gerekli Bilgiler #1 yazımda bu kadardı.  Diğer yazılarımda görüşmek üzere. PHP derslerinde verdiğim kodları, github’da C# tarafında yaptığım dersler uygulaması gibi bir şey yaparım. Görüşürüz.

PHP Dersleri için başlattığım repoya bağlantıya tıklayarak ulaşabilirsiniz. Bu Ders3 idi. Dersin kodları burada… :) Tüm PHP yazılarım için tıklayabilirsiniz. Discord’a katılmayı unutmayın.

Kodla kalın. :)

Bu yazıya tepkiniz ne oldu?

Yazar Hakkında

Lise Ağ Sistemleri ve Yönetimi bölümü, üniversite Bilgisayar Programcılığı bölümü Ön Lisans, Yönetim Bilişim Sistemleri Lisans öğrenimi aldım. Askerlik görevimi tamamladım. Uzmanlık alanım; C# ve SQL Programlama dilleri ile müşteri odaklı, kullanıcı dostu ERP ve CRM gibi sistemleri geliştirmektir. Ayrıca şuanda PHP ve MYSQL alanında projeler geliştirmekteyim. C++, Phyton, Xamarin, MVC gibi konuları öğrenmek ve kendimi geliştirme çabası içerisindeyim. Discord için: https://discord.gg/FBxZeHu9

Değerli yorumlarınızı bekliyorum. :)