المكتبة القياسية للغة PHP: نظرة شاملة على الدوال والفئات المضمنة

مدرب بايثون أونلاين للمبتدئين

تعلم Python بسهولة دون إرهاق نظري. حل مهام عملية مع التحقق التلقائي واكتب الكود مباشرة في المتصفح.

ابدأ الدورة

المكتبة القياسية للغة PHP: نظرة شاملة



PHP هي واحدة من أشهر لغات تطوير الويب، وتكمن قوتها إلى حد كبير في مكتبتها القياسية الغنية (Standard PHP Library, SPL). على عكس العديد من اللغات حيث المكتبة القياسية هي مجرد مجموعة من الأدوات الأساسية، تتضمن PHP مئات الدوال والفئات الجاهزة التي تغطي جميع احتياجات مطور الواجهة الخلفية تقريبًا. في هذه المقالة، سنقدم نظرة شاملة على المكونات الرئيسية للمكتبة القياسية للغة PHP، مع أمثلة على الكود وتوصيات عملية.



1. التعامل مع المصفوفات (Array Functions)

المصفوفات هي أساس PHP. توفر المكتبة القياسية عشرات الدوال لمعالجتها:

  • array_map() — تطبق دالة رد اتصال على جميع عناصر المصفوفة
  • array_filter() — تقوم بتصفية العناصر وفقًا لشرط
  • array_reduce() — تختزل المصفوفة إلى قيمة واحدة
  • array_merge() — تدمج عدة مصفوفات
  • array_diff() و array_intersect() — مقارنة المصفوفات
<?php$numbers = [1, 2, 3, 4, 5];$squared = array_map(fn($n) => $n * $n, $numbers);$even = array_filter($numbers, fn($n) => $n % 2 === 0);$sum = array_reduce($numbers, fn($carry, $n) => $carry + $n, 0);print_r($squared); // [1, 4, 9, 16, 25]print_r($even);    // [2, 4]echo $sum;         // 15?>


2. دوال السلاسل النصية (String Functions)

تقدم PHP مجموعة قوية للتعامل مع السلاسل النصية:

  • strlen(), strpos(), substr() — العمليات الأساسية
  • str_replace(), preg_replace() — استبدال السلاسل الفرعية
  • explode() و implode() — التقسيم/الدمج
  • trim(), htmlspecialchars() — تنظيف البيانات
<?php$text = "  Hello, PHP World!  ";$clean = trim($text);$parts = explode(", ", $clean);echo $parts[0]; // Helloecho str_replace("World", "Universe", $clean); // Hello, PHP Universe!?>


3. التعامل مع التواريخ والوقت (DateTime)

الفئة DateTime ومشتقاتها حلت بالكامل محل الدوال القديمة date():

  • DateTime::createFromFormat() — تحليل السلاسل النصية
  • DateInterval — التعامل مع الفترات الزمنية
  • DatePeriod — التكرار عبر نطاق من التواريخ
<?php$now = new DateTime('now');$birthday = new DateTime('2025-05-15');$interval = $now->diff($birthday);echo $interval->days . " يومًا حتى عيد الميلاد";?>


4. نظام الملفات (Filesystem Functions)

توفر المكتبة القياسية للغة PHP مجموعة كاملة للتعامل مع الملفات والدلائل:

  • file_get_contents(), file_put_contents() — القراءة/الكتابة السريعة
  • fopen(), fwrite(), fclose() — التعامل على مستوى منخفض
  • scandir(), mkdir(), unlink() — إدارة الدلائل
  • is_file(), is_dir(), file_exists() — التحقق
<?php$content = file_get_contents('data.txt');file_put_contents('backup.txt', $content);$files = array_diff(scandir('./uploads'), ['.', '..']);?>


5. التعامل مع قواعد البيانات (PDO - PHP Data Objects)

PDO هي واجهة عالمية للتعامل مع أنظمة إدارة قواعد البيانات المختلفة (MySQL, PostgreSQL, SQLite):

  • الاستعلامات المحضرة (prepared statements) — الحماية من حقن SQL
  • المعاملات مع دعم commit/rollback
  • API موحد لقواعد البيانات المختلفة
<?php$pdo = new PDO('mysql:host=localhost;dbname=test', 'user', 'pass');$stmt = $pdo->                    

توصيات