Yhya Nesb
627 subscribers
141 photos
1 video
1 file
112 links
شاب سوري طموح محب لعالم التقنية مهندس برمجيات
منشوراتي تعكس وجهة نظري الشخصية فقط.
Download Telegram
التوابع السحرية في PHP أو PHP function magic هي التوابع التي تستخدم في الأصناف Classes و الكائنات Objects حيث تحجز PHP جميع الدوال التي تبدء ب __ (إشارتان سفليتان) كدوال سحرية حيث تقوم بعمليات سحرية تطابق لإسمها


عندما تتعامل مع البرمجة كائنية التوجه في PHP عليك إلقاء نظرة عليهم، عندما بدأت بتعلم إطار العمل Laravel قابلتني عدة أسئلة حول كيفية بناء صنف class شبيه بصنف Model بحيث أقوم بإستدعاء البيانات من خلال الاسم الخاص به


User::get()[0]->name


وبعد تعرفي على هذه التوابع إستطعت فهم آلية عملها، تابع معي في الصورة للمزيد من المعلومات

ويمكنك قراءة المقالة التالية التي تحوي على أمثلة عملية:

https://blog.yhyasyrian.com/post/التوابع-السحرية-في-php/

للمزيد من المنشورات ♻️: تصفح قائمة المنشورات
#php #laravel #oop #php8 #php_trick #laravel_trick
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
3
This media is not supported in your browser
VIEW IN TELEGRAM
مشروع لعبة تخمين كلمات من خلال Command Line 👩‍💻 مشروع جميل وخاصة لمن يحب أن يتعلم إنشاء برمجيات تعمل في سطر الأوامر بلغة PHP 👩‍💻
رابط المشروع:
https://github.com/rodber/wordle-cli
#ملاحظة:
يتم إستخدام مكاتب خارجية للأمر الملطوب لكن إلقاء نظرة على الكود سيعطيك معلومات حول المكتبات المستخدمة وطريقة إستخدامها بمثال حي 😁
Please open Telegram to view this post
VIEW IN TELEGRAM
🔥1
إنشاء متغير وفقاً لقيمة متغير موجود في الأساس

قد تكون فكرة سهلة وبسيطة ويمكن إنشائها بأكثر من طريقة، لكن كثرة الاحتمالات ستجعلاً من بعض الطرق سيئة بقابلية القراءة أي كود غير نظيف ولهذه عليك التفكير بإستخدام التابع Match الذي يطابق التعبير (شبيه ب switch) الذي تمت إضافته في php8.0، سأعرض عليك بعض الطرق التي تأكد عليك ضرورة إستخدام التابع match لإنشاء كود نظيف

جميع الطرق موجودة في الصور

بعدما رأيت الطرق الممكنة لإنشاء متغير وفقاً لقيمة متغير موجود في السابق أخبرني ماهي الطريقة الأنسب

للمزيد من المنشورات ♻️: تصفح قائمة المنشورات
#php #laravel #برمجة #cleanCode #clean_code #php_trick #كود_نظيف
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
2
مرحبا، حبيت جرب Laravel 11 بعد التثبيت شغلت السيرفر المحلي مثل العادة من خلال أداة artisan وبعد ما دخلت لشوف التصميم الجديد 😍 بتصادفني مشكلة مضمونها جدول الجلسات غير موجود 😐، قلت مافي مشكلة هلق بنشأ الجداول وبعمل قاعدة بيانات جديدة من خلال أمر migrate 😅 والخطء القاتل كان خطء بالتجميع (collation) ولازم تكون قاعدة البيانات ذات تجميع "utf8mb4_0900_ai_ci" 😶 وبعد بضعة دقائق من المحاولة والبحث تبين أن قواعد البيانات عندي لا تدعم هذا النوع من التجميع 😢

بعد ساعات من البحث وتحديث الحزم وخدمات قواعد البيانات لم أنجح في الوصول لحل

تذكرت بأن ملفات تكوين قواعد البيانات في Laravel تحتوي على ترميز قاعدة البيانات

والحمد لله قدرت حل المشكلة، وفي حال واجهتك فقط ضيف السطر التالي بملف .env الخاص فيك:

DB_COLLATION=utf8mb4_general_ci

وإذا لم ينجح إستبدل نوع التجميع (utf8mb4_general_ci) بنوع تجميع متوفر عندك، ومبروك وفرت وقت كبير 😁

وفي حال كنت تستخدم سيرفر قواعد البيانات mariadb ممكن تختاره أثناء التنصيب لتفادي الوقوع في المشكلة (تمت إضافته في التحديث الجديد كخيار مختلف عن mysql)

للمزيد من المنشورات ♻️: تصفح قائمة المنشورات
#laravel #php #mysql #maraidb #bug #مشاكل #مشكلة #حل_مشاكل #laravel11 #laravel_11
Please open Telegram to view this post
VIEW IN TELEGRAM
👍1
إنشاء paginate مرقم في Laravel مثل الصورة

أول عليك إنشاء paginate في ال Controller ثم تمريرها إلى العرض View:

$users = DB::table('users')->paginate(15);


ثم في العرض ستقوم بإظهار النتائج الحالية (حسب ترتيب الصفحة) من خلال الإستعانة بالمولد @foreach: (ملاحظة هنا أعرض نتائج بسيطة، البيانات يجب أن توضع بجدول)

<div class="container">

@foreach ($users as $user)

<p>{{ $user->name }}</p>

@endforeach

</div>


وفي النهاية لعرض روابط التنقل بين الصفحات الخاصة بال paginate عليك اتبع الاوامر التالية:

تصدير عروض ترقيم الصفحات إلى الموارد resource

php artisan vendor:publish --tag=laravel-pagination

ثم إستخدم الكود التالي في العرض الخاص بك (سيتم التنسيق بإستخدام tailwindcss):

{{ $users->links('vendor.pagination.tailwind') }}


ومبروك عليك ال paginate

للمزيد من المنشورات ♻️: تصفح قائمة المنشورات
#laravel #php #oop #paginate #tailwindcss
Please open Telegram to view this post
VIEW IN TELEGRAM
Please open Telegram to view this post
VIEW IN TELEGRAM
بعض النصائح التي تستطيع إستعمالها في Laravel لتسهل عليك بعض العمليات عندما تتعامل الموجهات Routes

#laravel #php #oop #tips #laravel_tips