Yavuzlar
Ana sayfaTelegram
  • Yavuzlar
  • VulnLab
  • CodinLab
  • 📚EĞİTİM
    • PHP
      • XAMPP kurulumu
      • VS Code Kurulum
      • 1.0 PHP Nedir
      • 1.1 Dosya Oluşturma
      • 1.2 Syntax (Yazım Kuralları)
      • 1.3 PHP'de Echo ve Print
      • 1.4 PHP'deki yorumlar
      • 1.5 PHP Değişkenleri
      • 1.6 Operatörler (Operators)
      • 1.7 Veri Türünü Alma
      • 1.8 PHP'de String
      • 1.9 PHP'de Sabitler
      • 2.0 PHP'de If Else Elseif
      • 2.1 Switch Case
      • 2.2 PHP'de Döngüler
      • 2.3 PHP'de Diziler (Arrays)
      • 2.4 PHP'de Süper Global Değişkenleri
      • 2.5 PHP'de Cookie (Çerez) Ve Session (Oturum) Yöntemleri
      • 2.6 Form işlemleri
    • C++
      • 1.0 Temeller
        • 1.1 Dosya Oluşturma
        • 1.2 Syntax (Yazım Kuralları)
        • 1.3 Yorum Satırları
        • 1.4 C++ Değişkenleri
          • 1.4.1 Değişken Türleri
        • 1.5 Operatörler (Operators)
        • 1.6 Namespace
        • 1.7 Kullanıcı Girdisi (User Input)
        • 1.8 C++ Stringleri (C++ Strings)
        • 1.9 Matematik (Math) Fonksiyonları
        • 1.10 Booleans
        • 1.11 If Else
        • 1.12 Switch
        • 1.13 While Döngüsü
          • 1.13.1 Do While Döngüsü
        • 1.14 For Döngüsü
        • 1.15 Break/Continue
        • 1.16 Diziler
        • 1.17 Structures
        • 1.18 Enums
        • 1.19 References
        • 1.20 Pointers
      • 2.0 Fonksiyonlar
      • 3.0 Sınıflar
        • 3.1 OOP
        • 3.2 Sınıflar ve Objeler
        • 3.3 Sınıf Methodları
        • 3.4 Yapıcılar (Constructors)
        • 3.5 Erişim Belirleyicileri (Access Specifiers)
        • 3.6 Kapsülleme (Encapsulation)
        • 3.7 Inheritance
        • 3.8 Polimorfizm (Polymorphism)
        • 3.9 Dosyalar (Files)
        • 3.10 İstisnalar (Exceptions)
        • 3.11 Tarih ve Zaman (Date and Time)
      • 4.0 Veri Yapıları (Data Structures)
        • 4.1 Veri Yapıları ve STL
        • 4.2 Vektörler (Vectors)
        • 4.3 Listeler (Lists)
        • 4.4 Yığınlar (Stacks)
        • 4.5 Kuyruklar (Queues)
        • 4.6 Deque (Çift Uçlu Kuyruk)
        • 4.7 Küme (Set)
        • 4.8 Maps
        • 4.9 Iterator
        • 4.10 Algoritmalar
  • 🛠️ARAÇLAR
    • Aircrack-ng
    • Airgeddon
    • Arjun
    • BeEF
    • Bettercap
    • Docker
    • Gelişmiş Wireshark Kullanımı (Advanced Wireshark Usage)
    • Google Dorks
    • Hping3
    • John the Ripper
    • Metasploit Framework
    • Netcat
    • Nmap
    • OSINT Framework
    • PEASS-ng
    • Sublist3r
    • XSS Scanner
    • Wireshark
    • ZAP
    • HYDRA
  • 🖥️İŞLETİM SİSTEMLERİ
    • Linux101
    • MBR
  • 🔑KRİPTOLOJİ
    • Dijital Sertifika ve İmzalar
    • Sezar Şifrelemesi
    • Steganografi
    • Veri Şifreleme (Data Encryption)
  • 🔏Network
    • Domain Name Server (DNS)
    • Firewall Nedir? Nasıl Çalışır ?
    • Ortadaki Adam Saldırısı (Man In The Middle Attack)
    • OSI Modeli
    • Sanal Özel Ağlar (VPN)
    • World Wide Web (WWW)
  • 🔐PRIVILEGED
    • Docker Escape
  • 📨Protokoller
    • ARP
    • DHCP
    • FTP
    • HTTP/HTTPS
    • SSH
    • TCP/IP
    • UDP
    • Wİ-Fİ Güvenlik Protokolleri (WEP/WPA/WPA2/WPA3)
  • 💻SİBER TEHDİT İSTİHBARATI
    • Gelişmiş Siber Tehdit İstihbaratı Nedir?
  • 🔒WEB GÜVENLİĞİ
    • 403 ByPass
    • API Güvenliği (API Security)
    • Broken Access Control
    • Bulut Güvenliği (Cloud Security)
    • Command Injection
    • Cross Origin Resource Sharing
    • Cross Site Request Forgery (CSRF)
    • Cyber Kill Chain
    • DDoS Saldırıları
    • File Upload Zafiyeti Nedir?
    • HTTP Request Smuggling
    • Insecure Direct Object Reference (IDOR)
    • Incident Response
    • Local File Inclusion (LFI)
    • NoSQL Injection
    • Pentest 101
    • Race Condition
    • Server Side Request Forgery (SSRF)
    • Server Side Template Injection (SSTI)
    • Spring4Shell
    • Two Factor Authentication Bypass
    • XML External Entity Attack (XEE)
  • 🤖YAPAY ZEKA
    • ChatGPT for Hacking
    • Siber Güvenlik ve Yapay Zeka
    • Yapay Zeka ile Sahte Fotoğraf Tespiti
  • 🌐YAZILIM
    • Düzenli İfadeler (Regular Expressions)
    • Elasticsearch Nedir?
    • Front-end Teknolojileri
    • Golang'da Arayüzler (Interfaces)
    • Go'da Concurrency ve Uygulamaları
    • Güvenli Kodlama (Secure Coding)
    • Java Overloading vs Overriding
    • JSON Web Token (JWT)
    • Material-UI
    • NextJS Nedir?
    • ReactJS Kancalar (Hooks)
    • ReactJS Nedir?
    • Redux Toolkit
    • SOLID Yazılım Geliştirme Prensipleri
    • SQL 101
    • UI / UX Nedir?
    • Veri Taşıma Nedir? (Database Migration)
    • Versiyon Kontrol Sistemleri ve GIT
  • 🔷DİĞER
    • Bug Bounty (Hata Ödülü) Nedir?
    • Popüler Yazılımların Kurulumları
      • Ubuntu Server 24.04 LTS Kurulumu
      • Ubuntu için Güncel Docker Engine Kurlumu
    • Güvenlik Operasyonları Merkezi Nedir?
    • Honeypot (Bal Küpü)
    • IoT Güvenliği Nedir?
    • ShellShock Exploit
    • Yük Dengeleyici (Load Balancer) Nedir?
Powered by GitBook
On this page
  • define Fonksiyonu Kullanımı:
  • const ve define() karşılaştırması
  • Sihirli Sabitler

Was this helpful?

  1. EĞİTİM
  2. PHP

1.9 PHP'de Sabitler

define Fonksiyonu Kullanımı:

PHP'de bir sabit oluşturmak için define fonksiyonunu kullanabilirsiniz. define fonksiyonu üç parametre alır:

define(name, value, case-insensitive);
  1. name: Sabitin adını belirtir.

  2. value: Sabitin değerini belirtir.

  3. case-insensitive: Sabit adının büyük/küçük harfe duyarlı olup olmayacağını belirtir. PHP 8.0 itibariyle bu parametre her zaman false olmalıdır.

Büyük/küçük harfe duyarlı bir ada sahip bir sabit oluşturun:

define("GREETING", "Welcome to Yavuzlar");
echo GREETING;

Büyük/küçük harfe duyarlı olmayan bir ada sahip bir sabit oluşturun:

define("GREETING", "Welcome to Yavuzlar", true);
echo greeting;

const Anahtar Kelimesi ile Sabit Tanımlama:

const MYCAR = "Volvo";
echo MYCAR;

const ve define() karşılaştırması

  • const her zaman büyük/küçük harfe duyarlıdır

  • define() büyük/küçük harfe duyarlı olmayan bir seçeneğe sahiptir.

  • const Başka bir blok kapsamı içinde (örneğin bir fonksiyon içinde veya bir if bloğunun içinde) oluşturulamaz.

  • define başka bir blok kapsamı içinde oluşturulabilir.

Sihirli Sabitler

PHP'deki sihirli sabitler (magic constants), belirli durumlarda özel değerler döndüren sabitlerdir. Bu sabitler, dosya yolları, sınıf isimleri, fonksiyon isimleri gibi bilgileri döndürmek için kullanılır ve hata ayıklama veya bilgi toplama gibi amaçlar için oldukça yararlıdır.

Sihirli Sabitler ve Açıklamaları

  1. __CLASS__: Bir sınıf içinde kullanıldığında, sınıfın adını döner.

<?php
class MyClass {
    public function getClassName() {
        return __CLASS__;
    }
}

$obj = new MyClass();
echo $obj->getClassName(); // Çıktı: MyClass
?>
  1. __DIR__: Dosyanın bulunduğu dizini döner.

<?php
echo __DIR__; // Çıktı: dosyanın bulunduğu dizinin tam yolu
?>
  1. __FILE__: Dosyanın tam yolunu döner.

<?php
echo __FILE__; // Çıktı: dosyanın tam yolu ve adı
?>
  1. __FUNCTION__: Bir fonksiyon içinde kullanıldığında, fonksiyonun adını döner.

<?php
function myFunction() {
    return __FUNCTION__;
}

echo myFunction(); // Çıktı: myFunction
?>
  1. __LINE__: Geçerli satır numarasını döner.

<?php
echo "Bu kod satırı " . __LINE__ . " satırındadır."; //Çıktı: Bu kod satırı 3 satırındadır.
?>
  1. __METHOD__: Bir sınıfa ait bir fonksiyon içinde kullanıldığında, hem sınıf hem de fonksiyon adını döner.

<?php
class MyClass {
    public function myMethod() {
        return __METHOD__;
    }
}

$obj = new MyClass();
echo $obj->myMethod(); // Çıktı: MyClass::myMethod
?>
  1. __NAMESPACE__: Bir isim alanı içinde kullanıldığında, isim alanının adını döner.

<?php
namespace MyNamespace;

echo __NAMESPACE__; // Çıktı: MyNamespace
?>
  1. __TRAIT__: Bir trait içinde kullanıldığında, trait adını döner.

<?php
trait MyTrait {
    public function getTraitName() {
        return __TRAIT__;
    }
}

class MyClass {
    use MyTrait;
}

$obj = new MyClass();
echo $obj->getTraitName(); // Çıktı: MyTrait
?>
  1. ClassName::class: Belirtilen sınıfın adını ve varsa isim alanının adını döner.

<?php
namespace MyNamespace;

class MyClass {}

echo MyNamespace\MyClass::class; // Çıktı: MyNamespace\MyClass
?>

[!NOTE]

Sihirli sabitler büyük/küçük harfe duyarlı değildir, yani ile aynı değeri döndürür. __LINE__ = __line__

Previous1.8 PHP'de StringNext2.0 PHP'de If Else Elseif

Last updated 4 months ago

Was this helpful?

📚