Avatar ·

دوال str_starts_with و str_ends_with في PHP: كيفية التحقق من بداية ونهاية السلسلة النصية؟

مرحبًا بالجميع! أنا مبتدئ في PHP وأكتب مشروعًا صغيرًا. لدي مهمة: أحتاج إلى التحقق مما إذا كانت السلسلة النصية تبدأ ببادئة معينة أو تنتهي بلاحقة معينة. على سبيل المثال، أقوم بمعالجة أسماء الملفات وأريد تصفية فقط تلك التي تبدأ بـ "report_" أو تنتهي بـ ".pdf". سمعت أنه في PHP 8 ظهرت الدوال str_starts_with() و str_ends_with()، لكن مشروعي يعمل على PHP 7.4 ولا أستطيع تحديث الإصدار الآن. كيف يمكنني تنفيذ هذا التحقق بدون هذه الدوال المدمجة؟ حاليًا أستخدم substr() للمقارنة، لكن الكود يصبح ضخمًا وغير قابل للقراءة بسهولة. إليك مثال: ```php $filename = "report_q1_2024.pdf"; $prefix = "report_"; $suffix = ".pdf"; if (substr($filename, 0, strlen($prefix)) === $prefix) { echo "يبدأ بالبادئة"; } if (substr($filename, -strlen($suffix)) === $suffix) { echo "ينتهي باللاحقة"; } ``` هذا يعمل، لكني أعتقد أن هناك طرقًا أكثر أناقة. ربما