30 Nisan 2025 - 14:07
PHP ile Çeşitli Projelerde Kullanılabilecek Hazır Fonksiyonlar Görseli
PHP

PHP ile Çeşitli Projelerde Kullanılabilecek Hazır Fonksiyonlar

Yorumlar
PHP projelerinde sıkça ihtiyaç duyulan fonksiyonları veritabanı işlemleri, güvenlik, veri formatlama, performans ve dosya işlemleri gibi kategorilere ayırarak paylaşacağım. Bu fonksiyonlar, geliştirme sürecini hızlandırır ve kod tekrarını önler.

1. Güvenlik Fonksiyonları

1.1. SQL Injection’dan Korunma (Veri Temizleme)

PHP
function sanitizeInput($data, $db) {
    return htmlspecialchars(strip_tags($db->quote($data)));
}
Kullanım:
PHP
$username = sanitizeInput($_POST['username'], $pdo);
Bu fonksiyon, SQL Injection saldırılarını önlemeye yardımcı olur.

1.2. Güçlü Şifre Hashleme

PHP
function hashPassword($password) {
    return password_hash($password, PASSWORD_BCRYPT);
}
Kullanım:
PHP
$hashedPassword = hashPassword('GüçlüParola123');
Doğrulama:
PHP
if (password_verify($password, $hashedPassword)) {
    echo 'Şifre doğru!';
}
Bu fonksiyon, güvenli parola saklamak için bcrypt kullanır.

1.3. Güvenli Rastgele Token Üretme

PHP
function generateToken($length = 32) {
    return bin2hex(random_bytes($length));
}
Kullanım:
PHP
$csrfToken = generateToken();
Bu fonksiyon, CSRF token veya API anahtarları için rastgele güvenli bir dize üretir.

2. Veritabanı İşlemleri

2.1. Tüm Kullanıcıları Getiren Fonksiyon

PHP
function getAllUsers($db) {
    $stmt = $db->query('SELECT * FROM users');
    return $stmt->fetchAll(PDO::FETCH_ASSOC);
}
Kullanım:
PHP
$users = getAllUsers($pdo);
print_r($users);
Bu fonksiyon, veritabanından tüm kullanıcıları çeker.

2.2. Kullanıcı Bilgisi Getirme (ID ile)

PHP
function getUserById($db, $id) {
    $stmt = $db->prepare('SELECT * FROM users WHERE id = :id');
    $stmt->bindParam(':id', $id, PDO::PARAM_INT);
    $stmt->execute();
    return $stmt->fetch(PDO::FETCH_ASSOC);
}
Kullanım:
PHP
$user = getUserById($pdo, 1);
print_r($user);
Bu fonksiyon, belirtilen ID'ye sahip kullanıcının bilgilerini getirir.

3. Veri Formatlama Fonksiyonları

3.1. Tarih Formatını Düzenleme

PHP
function formatDate($date, $format = 'd-m-Y H:i') {
    return date($format, strtotime($date));
}
Kullanım:
PHP
echo formatDate('2024-03-05 15:30:00');
Bu fonksiyon, tarih formatlarını okunabilir hale getirir.

3.2. Metni Kısaltma

PHP
function truncateText($text, $length = 100) {
    return strlen($text) > $length ? substr($text, 0, $length) . '...' : $text;
}
Kullanım:
PHP
echo truncateText('Bu çok uzun bir metindir ve kısaltılması gerekmektedir.', 20);
Bu fonksiyon, uzun metinleri belirli bir uzunluğa kadar kısaltır.

4. Dosya ve Klasör İşlemleri

4.1. Dosyanın Boyutunu İnsan Dostu Formatta Gösterme

PHP
function formatFileSize($bytes) {
    $sizes = ['B', 'KB', 'MB', 'GB', 'TB'];
    $factor = floor((strlen($bytes) - 1) / 3);
    return sprintf('%.2f %s', $bytes / pow(1024, $factor), $sizes[$factor]);
}
Kullanım:
PHP
echo formatFileSize(2048000); // 1.95 MB
Bu fonksiyon, dosya boyutlarını okunabilir bir formata dönüştürür.

4.2. Belirli Bir Dizindeki Dosyaları Listeleme

PHP
function listFiles($dir) {
    return array_diff(scandir($dir), ['.', '..']);
}
Kullanım:
PHP
print_r(listFiles('uploads'));
Bu fonksiyon, belirtilen dizindeki tüm dosyaları listeler.

5. Performans Optimizasyonu

5.1. Sayfa Yükleme Süresini Ölçme

PHP
function startTimer() {
    global $start_time;
    $start_time = microtime(true);
}
function endTimer() {
    global $start_time;
    return round(microtime(true) - $start_time, 5) . ' saniye';
}
Kullanım:
PHP
startTimer();
// İşlemler burada yapılır
echo 'Sayfa yükleme süresi: ' . endTimer();
Bu fonksiyon, PHP betiklerinin çalışma süresini ölçer.

5.2. Bellek Kullanımını Ölçme

PHP
function getMemoryUsage() {
    return round(memory_get_usage() / 1024 / 1024, 2) . ' MB';
}
Kullanım:
PHP
echo getMemoryUsage();
Bu fonksiyon, PHP betiğinin kullandığı bellek miktarını ölçer.

6. Çeşitli Faydalı Fonksiyonlar

6.1. IP Adresini Alma

PHP
function getClientIP() {
    return $_SERVER['REMOTE_ADDR'] ?? '0.0.0.0';
}
Kullanım:
PHP
echo getClientIP();
Bu fonksiyon, kullanıcının IP adresini döndürür.

6.2. Rastgele Şifre Üretme

PHP
function generatePassword($length = 12) {
    return substr(str_shuffle('abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789!@#$%^&*'), 0, $length);
}
Kullanım:
PHP
echo generatePassword(16);
Bu fonksiyon, rastgele bir güçlü şifre oluşturur.

Benzer Yazılar

Yorumlar ()

Henüz yorum yok. İlk yorum yapan sen ol!

Yorum Yap