⚡️چطوری تو لاراول پسورد کاربر رو ایمن چک کنیم؟ 🚀
اگه میخوای کاربرانت پسوردهای ضعیف نذارن یا از پسوردهای لو رفته استفاده نکنن، لاراول یه ابزار خفن داره به اسم Password Rule که کار رو برات راحت میکنه. بیا باهم یاد بگیریم چطوری ازش استفاده کنیم:
# چیکار میکنه این Password Rule؟
- پسورد رو بررسی میکنه ببینه شرایط امنیتی رو داره یا نه
- میتونی تعیین کنی حداقل چند کاراکتر باشه
- میتونی مجبورش کنی حروف بزرگ و کوچک توش باشه
- میتونی بگی حتما عدد و علامت خاص (!@#) داشته باشه
- حتی میتونی چک کنی این پسورد تو لیست پسوردهای هک شده دنیا نباشه!
# چطوری استفاده کنیم؟
# مثال واقعی از استفاده:
1. پسورد ضعیف:
❌ رد میشه چون:
- حروف بزرگ نداره
- علامت خاص نداره
- تو لیست پسوردهای لو رفته هست!
2. پسورد قوی:
✅ قبول میشه چون:
- بیشتر از 8 کاراکتره
- هم حروف بزرگ داره هم کوچک
- عدد داره
- علامت خاص داره
- تو لیست پسوردهای لو رفته نیست
# چرا اینقد سختگیری؟
- 80% هکها بخاطر پسوردهای ضعیفه!
- رباتها میتونن ثانیهای میلیونها پسورد ساده رو تست کنن
- پسوردهای لو رفته خیلی راحت هک میشن
# پسوردهای لو رفته چیه؟
لاراول خودش به یک دیتابیس بزرگ از پسوردهای هک شده وصل میشه و چک میکنه کاربر ازشون استفاده نکنه. مثلا این پسوردها همیشه رد میشن:
-
-
-
-
نکته مهم:
این تنظیمات رو میتونی بسته به نیازت عوض کنی. مثلا برای یه سیستم خیلی حساس:
یا برای یه سیستم سادهتر:
پایان!
حالا میتونی مطمئن باشی کاربرانت پسوردهای امن و قوی انتخاب میکنن! 🚀
#امنیت #لاراول #پسورد_امن #برنامه_نویسی
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
اگه میخوای کاربرانت پسوردهای ضعیف نذارن یا از پسوردهای لو رفته استفاده نکنن، لاراول یه ابزار خفن داره به اسم Password Rule که کار رو برات راحت میکنه. بیا باهم یاد بگیریم چطوری ازش استفاده کنیم:
# چیکار میکنه این Password Rule؟
- پسورد رو بررسی میکنه ببینه شرایط امنیتی رو داره یا نه
- میتونی تعیین کنی حداقل چند کاراکتر باشه
- میتونی مجبورش کنی حروف بزرگ و کوچک توش باشه
- میتونی بگی حتما عدد و علامت خاص (!@#) داشته باشه
- حتی میتونی چک کنی این پسورد تو لیست پسوردهای هک شده دنیا نباشه!
# چطوری استفاده کنیم؟
use Illuminate\Validation\Rules\Password;
// داخل قسمت اعتبارسنجی (Validation)
'password' => [
'required', // حتما پر بشه
'confirmed', // با تکرار پسورد مطابقت داشته باشه
Password::min(8) // حداقل 8 کاراکتر
->mixedCase() // هم حروف بزرگ هم کوچک
->numbers() // حداقل یک عدد
->symbols() // حداقل یک علامت مثل @
->uncompromised(), // تو لیست پسوردهای لو رفته نباشه
],
# مثال واقعی از استفاده:
1. پسورد ضعیف:
password123 ❌ رد میشه چون:
- حروف بزرگ نداره
- علامت خاص نداره
- تو لیست پسوردهای لو رفته هست!
2. پسورد قوی:
P@ssw0rd2024! ✅ قبول میشه چون:
- بیشتر از 8 کاراکتره
- هم حروف بزرگ داره هم کوچک
- عدد داره
- علامت خاص داره
- تو لیست پسوردهای لو رفته نیست
# چرا اینقد سختگیری؟
- 80% هکها بخاطر پسوردهای ضعیفه!
- رباتها میتونن ثانیهای میلیونها پسورد ساده رو تست کنن
- پسوردهای لو رفته خیلی راحت هک میشن
# پسوردهای لو رفته چیه؟
لاراول خودش به یک دیتابیس بزرگ از پسوردهای هک شده وصل میشه و چک میکنه کاربر ازشون استفاده نکنه. مثلا این پسوردها همیشه رد میشن:
-
123456 -
password -
qwerty -
iloveyouنکته مهم:
این تنظیمات رو میتونی بسته به نیازت عوض کنی. مثلا برای یه سیستم خیلی حساس:
Password::min(12)->mixedCase()->numbers()->symbols()->uncompromised()
یا برای یه سیستم سادهتر:
Password::min(6)->mixedCase()
پایان!
حالا میتونی مطمئن باشی کاربرانت پسوردهای امن و قوی انتخاب میکنن! 🚀
#امنیت #لاراول #پسورد_امن #برنامه_نویسی
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
👍5❤2
📤 چاپ "Hello, World!" توی زبونهای مختلف چقدر سادهس؟ تا وقتی اسمبلی رو نبینی!
🔹 PHP
🔹 JavaScript
🔹 Csharp
🔹 Java
🔹 C++
😈 حالا بریم سراغ Assembly (x86, Linux):
😵💫 چی شد؟! تازه این فقط چاپه! هنوز تابع و کتابخونه و مدیریت حافظه نیومده وسط...
🧠 نکته:
زبانهایی مثل PHP، JS، و C# کلی abstraction دارن! وقتی مینویسی console.log("Hello")، در واقع یه عالمه کد سطح پایین داره پشت صحنه اجرا میشه:
سیستمعامل صدا زده میشه، حافظه مدیریت میشه، با دستگاه خروجی ارتباط برقرار میشه و...
ولی توی اسمبلی؟ 😬 باید خودت مستقیم با سیستمعامل حرف بزنی. باید آدرسها رو بدی، طول رشته رو مشخص کنی، و دقیقاً بدونی سیستم چطور کار میکنه.
🔥 پس اگه یه بار دیگه یه برنامهنویس گفت "ای بابا، چاپ یه جمله که کاری نداره"، این پستو نشونش بده!
#برنامه نویسی #فان #امنیت #ویندوز #لینوکس #اسمبلی
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
🔹 PHP
echo "Hello, World!";
🔹 JavaScript
console.log("Hello, World!");🔹 Csharp
Console.WriteLine("Hello, World!");🔹 Java
public class Main {
public static void main(String[] args) {
System.out.println("Hello, World!");
}
}🔹 C++
#include <iostream>
int main() {
std::cout << "Hello, World!" << std::endl;
}
😈 حالا بریم سراغ Assembly (x86, Linux):
section .data
msg db "Hello, World!", 0xA
len equ $ - msg
section .text
global _start
_start:
mov eax, 4 ; syscall number (sys_write)
mov ebx, 1 ; file denoscriptor (stdout)
mov ecx, msg ; pointer to message
mov edx, len ; message length
int 0x80 ; call kernel
mov eax, 1 ; syscall number (sys_exit)
xor ebx, ebx ; exit code 0
int 0x80 ; call kernel
😵💫 چی شد؟! تازه این فقط چاپه! هنوز تابع و کتابخونه و مدیریت حافظه نیومده وسط...
🧠 نکته:
زبانهایی مثل PHP، JS، و C# کلی abstraction دارن! وقتی مینویسی console.log("Hello")، در واقع یه عالمه کد سطح پایین داره پشت صحنه اجرا میشه:
سیستمعامل صدا زده میشه، حافظه مدیریت میشه، با دستگاه خروجی ارتباط برقرار میشه و...
ولی توی اسمبلی؟ 😬 باید خودت مستقیم با سیستمعامل حرف بزنی. باید آدرسها رو بدی، طول رشته رو مشخص کنی، و دقیقاً بدونی سیستم چطور کار میکنه.
🔥 پس اگه یه بار دیگه یه برنامهنویس گفت "ای بابا، چاپ یه جمله که کاری نداره"، این پستو نشونش بده!
#برنامه نویسی #فان #امنیت #ویندوز #لینوکس #اسمبلی
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
🔥5👍1
به زودی میخوام یه Live Stream بزارم
انتخاب محتوا رو میزارم به عهده شما
اگر گزینه تو نظر سنجی نبود تو گروه ریپلای بزنید.
انتخاب محتوا رو میزارم به عهده شما
اگر گزینه تو نظر سنجی نبود تو گروه ریپلای بزنید.
Anonymous Poll
25%
هک و امنیت به صورت لایو
19%
php
3%
python
73%
Laravel
16%
ترفند های برنامه نویسی
8%
اینارو بیخیال یه دورهمی بزاریم تو دیسکورد :)
📢 معرفی یک دستیار هوش مصنوعی برای برنامهنویسان! Deepseek 🤖💻
سلام به همه دوستان کدزن و تکنولوژی دوست کانال! 👋
امروز میخوام یه همکارِ هوشمند رو بهتون معرفی کنم که میتونه تو دنیای برنامهنویسی، همراه، کمکحلمسئله و حتی معلمِ شما باشه!
🔧 چرا این هوش مصنوعی برای برنامهنویسان مفیده؟
✅ کمک در کدنویسی:
اشکالزدایی (Debugging): کدتون ارور میده؟ خطاها رو تحلیل میکنم و راهحل پیشنهاد میدم.
بهینهسازی کد: میتونم کدهای شما رو از نظر کارایی، خوانایی و اصولِ Clean Code بررسی کنم.
تولید کد: نیاز به یک تابع خاص در Python, JavaScript, C++, ... دارید؟ کد آماده تحویل بگیرید!
✅ یادگیری و آموزش:
توضیح مفاهیم پیچیده: مثلاً تفاوت REST vs GraphQL یا کاربرد Design Patterns رو ساده توضیح میدم.
منابع یادگیری: برای هر موضوعی (مثلاً Machine Learning, Web Dev, Blockchain) بهترین کتابها، دورهها و مستندات رو معرفی میکنم.
✅ پروژههای واقعی:
پیادهسازی الگوریتمها: از سورتها و ساختار داده گرفته تا شبکههای عصبی.
کمک در معماری نرمافزار: مثلاً چطور یک میکروسرویس scalable طراحی کنیم؟
✅ فناوریهای روز:
آپدیتهای تکنولوژی: مثلاً تغییرات جدید در React, ویژگیهای ES2024, یا آخرین آپدیتهای Docker.
مقایسهٔ ابزارها: مثلاً Django vs Flask یا MongoDB vs PostgreSQL.
سایت هوش مصنوعی:
https://chat.deepseek.com/
#کدنویسی #هوش_مصنوعی #توسعه_نرم_افزار
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
سلام به همه دوستان کدزن و تکنولوژی دوست کانال! 👋
امروز میخوام یه همکارِ هوشمند رو بهتون معرفی کنم که میتونه تو دنیای برنامهنویسی، همراه، کمکحلمسئله و حتی معلمِ شما باشه!
🔧 چرا این هوش مصنوعی برای برنامهنویسان مفیده؟
✅ کمک در کدنویسی:
اشکالزدایی (Debugging): کدتون ارور میده؟ خطاها رو تحلیل میکنم و راهحل پیشنهاد میدم.
بهینهسازی کد: میتونم کدهای شما رو از نظر کارایی، خوانایی و اصولِ Clean Code بررسی کنم.
تولید کد: نیاز به یک تابع خاص در Python, JavaScript, C++, ... دارید؟ کد آماده تحویل بگیرید!
✅ یادگیری و آموزش:
توضیح مفاهیم پیچیده: مثلاً تفاوت REST vs GraphQL یا کاربرد Design Patterns رو ساده توضیح میدم.
منابع یادگیری: برای هر موضوعی (مثلاً Machine Learning, Web Dev, Blockchain) بهترین کتابها، دورهها و مستندات رو معرفی میکنم.
✅ پروژههای واقعی:
پیادهسازی الگوریتمها: از سورتها و ساختار داده گرفته تا شبکههای عصبی.
کمک در معماری نرمافزار: مثلاً چطور یک میکروسرویس scalable طراحی کنیم؟
✅ فناوریهای روز:
آپدیتهای تکنولوژی: مثلاً تغییرات جدید در React, ویژگیهای ES2024, یا آخرین آپدیتهای Docker.
مقایسهٔ ابزارها: مثلاً Django vs Flask یا MongoDB vs PostgreSQL.
سایت هوش مصنوعی:
https://chat.deepseek.com/
#کدنویسی #هوش_مصنوعی #توسعه_نرم_افزار
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
Deepseek
Chat with DeepSeek AI.
❤2
Media is too big
VIEW IN TELEGRAM
🎥💻 اضافه کردن واترمارک به ویدیو با PHP و FFmpeg
اگه تا حالا خواستی روی ویدیوهایی که توی سایت یا اپلیکیشنت آپلود میشن، بهصورت خودکار یه واترمارک بندازی، این آموزش مخصوص توئه! 👇
✅ با استفاده از PHP و ابزار قدرتمند FFmpeg میتونی به راحتی واترمارک متنی رو در مرکز ویدیو، با فونت بزرگ و شفافیت دلخواه قرار بدی.
🔥 با این روش، محتوای ویدیوی تو امنتره و برندت همیشه روی صفحه دیده میشه!
این یه ایده است که از قانون کپی رایت حمایت بشه یا برندت دیده بشه مشابه سایت آپارات
#برنامهنویسی #PHP #FFmpeg #واترمارک #ویدیو #آموزش_کد
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
اگه تا حالا خواستی روی ویدیوهایی که توی سایت یا اپلیکیشنت آپلود میشن، بهصورت خودکار یه واترمارک بندازی، این آموزش مخصوص توئه! 👇
✅ با استفاده از PHP و ابزار قدرتمند FFmpeg میتونی به راحتی واترمارک متنی رو در مرکز ویدیو، با فونت بزرگ و شفافیت دلخواه قرار بدی.
🔥 با این روش، محتوای ویدیوی تو امنتره و برندت همیشه روی صفحه دیده میشه!
این یه ایده است که از قانون کپی رایت حمایت بشه یا برندت دیده بشه مشابه سایت آپارات
#برنامهنویسی #PHP #FFmpeg #واترمارک #ویدیو #آموزش_کد
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
❤5👍1
اگه با ترمینال ویندوز حال نمیکنی...
Cmder یه ترمینال خفن و خوشگل برای ویندوزه که میتونه کلی کارتو راحتتر کنه!
🔹 سبک و قابل حمله (نیازی به نصب نداره)
🔹 از CMD، PowerShell و Git Bash پشتیبانی میکنه
🔹 تب داره، تم قشنگ داره، دستورای لینوکسی هم میفهمه
🔹 با Git هم سازگاره، مخصوصاً نسخه کاملش
🔹 خلاصه هم خوشگله، هم کار راهاندازه 😎
📥 دانلود از سایت رسمی:
🌐 https://cmder.app
#برنامه_نویسی #لاراول #توسعه_نرم_افزار #معرفی_نرم_افزار #cmder
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
Cmder یه ترمینال خفن و خوشگل برای ویندوزه که میتونه کلی کارتو راحتتر کنه!
🔹 سبک و قابل حمله (نیازی به نصب نداره)
🔹 از CMD، PowerShell و Git Bash پشتیبانی میکنه
🔹 تب داره، تم قشنگ داره، دستورای لینوکسی هم میفهمه
🔹 با Git هم سازگاره، مخصوصاً نسخه کاملش
🔹 خلاصه هم خوشگله، هم کار راهاندازه 😎
📥 دانلود از سایت رسمی:
🌐 https://cmder.app
#برنامه_نویسی #لاراول #توسعه_نرم_افزار #معرفی_نرم_افزار #cmder
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
cmder.app
Cmder | Console Emulator
cmder is software package that provides great console experience even on Windows
❤2
سلام وقتتون بخیر
امروز میخوام یه افزونه کاربردی برای تست Api بهتون معرفی کنم که خیلی سبک و عالی هست و کار مشابه Postman رو واستون انجام میده.
https://www.thunderclient.com/
#برنامه_نویسی #لاراول #توسعه_نرم_افزار #معرفی_نرم_افزار #cmder
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
امروز میخوام یه افزونه کاربردی برای تست Api بهتون معرفی کنم که خیلی سبک و عالی هست و کار مشابه Postman رو واستون انجام میده.
https://www.thunderclient.com/
#برنامه_نویسی #لاراول #توسعه_نرم_افزار #معرفی_نرم_افزار #cmder
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
🔥 رفع ارور Call to a member function count() on null با قابلیت های جدید PHP 8 در لاراول! 🔥
اگر تو Blade داری این خط رو مینویسی:
و ارور میگیری:
Call to a member function count() on null
یعنی متغیر products مقدارش null هست و نمیتونه count() رو اجرا کنه!
💡 راه حل ساده: از عملگر null safe استفاده کن:
با این کار، اگه products موجود نبود، ارور نمیده و پیام جایگزین نمایش داده میشه.
✅ با این روش هم ارور حذف میشه، هم کد ایمنتر میشه و هم از امکانات جدید PHP 8 استفاده کردی!
#لاراول #php8 #blade #nullsafe #ارور_لاراول #آموزش_لاراول #برنامه_نویسی #لاراولیها #کد #ترفند_برنامه_نویسی #Laravel #PHP #null_safe_operator #LaravelTips
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
اگر تو Blade داری این خط رو مینویسی:
{{ $category->products->count() ?: 'محصولی وجود ندارد' }}و ارور میگیری:
Call to a member function count() on null
یعنی متغیر products مقدارش null هست و نمیتونه count() رو اجرا کنه!
💡 راه حل ساده: از عملگر null safe استفاده کن:
{{ $category->products?->count() ?: 'محصولی وجود ندارد' }}با این کار، اگه products موجود نبود، ارور نمیده و پیام جایگزین نمایش داده میشه.
✅ با این روش هم ارور حذف میشه، هم کد ایمنتر میشه و هم از امکانات جدید PHP 8 استفاده کردی!
#لاراول #php8 #blade #nullsafe #ارور_لاراول #آموزش_لاراول #برنامه_نویسی #لاراولیها #کد #ترفند_برنامه_نویسی #Laravel #PHP #null_safe_operator #LaravelTips
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
👌5👍1
🎯 تولید خودکار کد یونیک برای هر محصول در لاراول
هر وقت یه محصول جدید اضافه میکنی، میخوای یه کد خاص مثل BE45VGRT خودکار براش ساخته بشه؟
با این روش ساده تو مدل Product میتونی انجامش بدی:
🥸توضیح فنی کارکرد کدها:
این کلاس Str از هستهی لاراوله و کلی ابزار برای کار با رشتهها داره. ما از Str::random() استفاده میکنیم که یک رشته تصادفی میسازه.
این متد یکی از lifecycle hookهای Eloquent هست که بعد از boot() صدا زده میشه و برای وصل کردن event handlerها خیلی مناسبه
اینجا داریم از رویداد Eloquent به اسم creating استفاده میکنیم که قبل از ذخیره محصول جدید در دیتابیس اجرا میشه. یعنی کد قبل از INSERT شدن، تولید و تنظیم میشه.
🔍 چه اتفاقی اینجا میافته؟
کد Str::random(8) یک رشته تصادفی با ۸ کاراکتر تولید میکنه.
این رشته شامل حروف بزرگ و کوچک لاتین و اعداد هست.
یعنی احتمال تکراری بودن کد در دیتابیس عملاً صفره، ولی ما باز هم چک میکنیم.
کدstrtoupper() باعث میشه رشته فقط حروف بزرگ داشته باشه که خواناتر و مرتبتره.
یه حلقه که بررسی میکنه آیا این کد قبلاً تو دیتابیس ذخیره شده یا نه.
اگه شده باشه، یه کد دیگه تولید میکنه.
💡 ترکیبهای ممکن: بیش از ۲۱۸ تریلیون! پس خیالت راحت که تکراری نمیشه
و اگه شد؟ چک میکنه تا یکی تازه بده!
#لاراول #php8 #blade #nullsafe #ارور_لاراول #آموزش_لاراول #برنامه_نویسی #لاراولیها #کد #ترفند_برنامه_نویسی #Laravel #PHP #LaravelTips
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
هر وقت یه محصول جدید اضافه میکنی، میخوای یه کد خاص مثل BE45VGRT خودکار براش ساخته بشه؟
با این روش ساده تو مدل Product میتونی انجامش بدی:
use Illuminate\Support\Str;
class Product extends Model
{
protected static function booted()
{
static::creating(function ($product) {
do {
$code = strtoupper(Str::random(8));
} while (self::where('code', $code)->exists());
$product->code = $code;
});
}
}
🥸توضیح فنی کارکرد کدها:
use Illuminate\Support\Str;
این کلاس Str از هستهی لاراوله و کلی ابزار برای کار با رشتهها داره. ما از Str::random() استفاده میکنیم که یک رشته تصادفی میسازه.
protected static function booted()
این متد یکی از lifecycle hookهای Eloquent هست که بعد از boot() صدا زده میشه و برای وصل کردن event handlerها خیلی مناسبه
static::creating(function ($product) {اینجا داریم از رویداد Eloquent به اسم creating استفاده میکنیم که قبل از ذخیره محصول جدید در دیتابیس اجرا میشه. یعنی کد قبل از INSERT شدن، تولید و تنظیم میشه.
do {
$code = strtoupper(Str::random(8));
} while (self::where('code', $code)->exists());🔍 چه اتفاقی اینجا میافته؟
کد Str::random(8) یک رشته تصادفی با ۸ کاراکتر تولید میکنه.
این رشته شامل حروف بزرگ و کوچک لاتین و اعداد هست.
یعنی احتمال تکراری بودن کد در دیتابیس عملاً صفره، ولی ما باز هم چک میکنیم.
کدstrtoupper() باعث میشه رشته فقط حروف بزرگ داشته باشه که خواناتر و مرتبتره.
while (self::where(...)->exists()):
یه حلقه که بررسی میکنه آیا این کد قبلاً تو دیتابیس ذخیره شده یا نه.
اگه شده باشه، یه کد دیگه تولید میکنه.
💡 ترکیبهای ممکن: بیش از ۲۱۸ تریلیون! پس خیالت راحت که تکراری نمیشه
و اگه شد؟ چک میکنه تا یکی تازه بده!
#لاراول #php8 #blade #nullsafe #ارور_لاراول #آموزش_لاراول #برنامه_نویسی #لاراولیها #کد #ترفند_برنامه_نویسی #Laravel #PHP #LaravelTips
🔥⚡️ کانال آموزشی LaravelHub
@LaravelHub
👍1👎1
یکی از قابلیتهای قدرتمند و کمتر شناختهشدهی blade وجوده متغیری به نام $loop در هنگام استفاده از دستور foreach@ است. این متغیر بهصورت خودکار و فقط درون حلقه در دسترس قرار میگیره و اطلاعات بسیار مفیدی درباره وضعیت فعلی تکرار حلقه فراهم میکنه.
کاربردهای عملی $loop :
زمانیکه در یک Blade از foreach@ استفاده میکنید، لاراول بطور خودکار یک شیء Loop اختصاصی تولید میکنه که مهم هاشو نوشتم براتون :
int — شماره اندیس فعلی (از 0 شروع میشه)
int — شماره تکرار (از 1 شروع میشه)
int — تعداد کل آیتمها در حلقه
bool — آیا این اولین تکراره؟ (true/false)
bool — آیا این آخرین تکراره؟ (true/false)
int — چند آیتم دیگه تا پایان حلقه باقی مونده
bool — آیا تکرار فعلی زوجه؟
bool — آیا تکرار فعلی فرده؟
int — عمق حلقه (در حلقههای تو در تو)
object|null — دسترسی به حلقهی والد در صورت وجود
مثال؟؟
<ul>
@foreach ($products as $product)
<li class="{{ $loop->odd ? 'bg-light' : 'bg-dark' }}">
{{ $loop->iteration }}. {{ $product->name }}
@if ($loop->first)
<span class="badge">New!</span>
@endif
@if ($loop->last)
<span class="badge">End</span>
@endif
</li>
@endforeach
</ul>
درین مثال از $loop->iteration برای شمارهگذاری استفاده شده.
با $loop->odd استایل متفاوت برای ردیفهای فرد و زوج اعمال شده.
اولین و آخرین محصول با نشان خاصی مشخص شدهاند.
نکات مهم:
این $ loop فقط در Blade و فقط در داخل foreach@ (یا for@) در دسترسه.
اگه حلقههای توو در توو دارید، میتونین از $loop->depth و $loop->parent استفاده کنین.
این قابلیت در Viewها به کاهش پیچیدگی کد و خوانایی بیشتر کمک میکند.
استفاده از $loop در Laravel Blade نهتنها کدنویسی را تمیزتر و خواناتر میکند، بلکه امکاناتی مثل تشخیص اولین یا آخرین آیتم، استایلگذاری زوج و فرد، و شمارنده حلقه را بدون نیاز به تعریف متغیرهای دستی فراهم میکند.
#Laravel
https://x.com/laravelbackpack/status/1929863164302393517?s=35
منبع: @GoldenCodeir
@LaravelHub
Please open Telegram to view this post
VIEW IN TELEGRAM
X (formerly Twitter)
Backpack for Laravel (@laravelbackpack) on X
1/3. Laravel Tip
Did you know... While iterating through a foreach loop, a $loop variable will be available inside of your loop. This variable provides access to some useful bits of information.
More info in the short 🧵👇
Did you know... While iterating through a foreach loop, a $loop variable will be available inside of your loop. This variable provides access to some useful bits of information.
More info in the short 🧵👇
👍7❤2🔥2
WebTerminal-@LaravelHUB.php
9 KB
🚀 ابزار جدید برای توسعهدهندگان: Web Terminal 🖥
سلام به همه دوستان و همراهان LaravelHUB! 👋
امروز با یک ابزار جالب و کاربردی برای توسعهدهندگان وب در خدمت شما هستیم: Web Terminal
Web Terminal چیست؟
این یک ترمینال تحت وب ساده و سبک است که به شما امکان میدهد دستورات مختلف را مستقیماً از طریق مرورگر اجرا کنید. این ابزار برای تست سریع دستورات، بررسی محیط سرور، و انجام عملیاتهای ساده بسیار کاربردی است.
✨ ویژگیهای کلیدی:
✅ پشتیبانی از دستورات پرکاربرد مانند ls, pwd, whoami, uname و...
✅ امنیت بالا با فیلتر کردن دستورات خطرناک (مثل rm, chmod, wget و...)
✅ رابط کاربری ساده و شبیه به ترمینال واقعی
✅ سازگار با موبایل و دسکتاپ
🛠 چطور استفاده کنیم؟
کافیست دستور مورد نظر خود را وارد کرده و نتیجه را فوراً مشاهده کنید!
📌 مثال:
💡 نکته امنیتی:
این ابزار صرفاً برای تست و توسعه طراحی شده و توصیه میشود در محیطهای حساس از آن استفاده نکنید.
👨💻 طراحی و توسعه:
آقای علیرضا | @Special_One
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#ترمینال #وب #توسعه_وب #php #لاراول #ابزار_توسعهدهنده
سلام به همه دوستان و همراهان LaravelHUB! 👋
امروز با یک ابزار جالب و کاربردی برای توسعهدهندگان وب در خدمت شما هستیم: Web Terminal
Web Terminal چیست؟
این یک ترمینال تحت وب ساده و سبک است که به شما امکان میدهد دستورات مختلف را مستقیماً از طریق مرورگر اجرا کنید. این ابزار برای تست سریع دستورات، بررسی محیط سرور، و انجام عملیاتهای ساده بسیار کاربردی است.
✨ ویژگیهای کلیدی:
✅ پشتیبانی از دستورات پرکاربرد مانند ls, pwd, whoami, uname و...
✅ امنیت بالا با فیلتر کردن دستورات خطرناک (مثل rm, chmod, wget و...)
✅ رابط کاربری ساده و شبیه به ترمینال واقعی
✅ سازگار با موبایل و دسکتاپ
🛠 چطور استفاده کنیم؟
کافیست دستور مورد نظر خود را وارد کرده و نتیجه را فوراً مشاهده کنید!
📌 مثال:
ls
pwd
php -v
💡 نکته امنیتی:
این ابزار صرفاً برای تست و توسعه طراحی شده و توصیه میشود در محیطهای حساس از آن استفاده نکنید.
👨💻 طراحی و توسعه:
آقای علیرضا | @Special_One
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#ترمینال #وب #توسعه_وب #php #لاراول #ابزار_توسعهدهنده
🥰1
نمایش قدرت واقعی PHP با یک مثال هوشمند و عجیب!
خیلیا فکر میکنن PHP فقط برای فرم لاگین و صفحه تماس با ماست... ولی بیا یه چیز خاص نشونت بدم:
یک Router ساده، سبک، و داینامیک، با کمتر از 15 خط کد!
🔮 این یعنی:
بدون نیاز به فریمورکهایی مثل Laravel یا Symfony
بدون نصب چیزی!
فقط با توابع پایهی PHP، میتونی یه سیستم روتینگ داینامیک بسازی که pathهایی مثل /user/123 رو هندل کنه!
💪 قدرت واقعی PHP اینجاست:
برنامهنویسی فانکشنال ✅
هندرهای داینامیک ✅
پردازش regex توی URLها ✅
بدون وابستگی خارجی ✅
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#ترمینال #وب #توسعه_وب #php #لاراول #ابزار_توسعهدهنده
خیلیا فکر میکنن PHP فقط برای فرم لاگین و صفحه تماس با ماست... ولی بیا یه چیز خاص نشونت بدم:
یک Router ساده، سبک، و داینامیک، با کمتر از 15 خط کد!
$routes = [
'/' => fn() => 'صفحه اصلی',
'/about' => fn() => 'درباره ما',
'/user/(\d+)' => fn($id) => "کاربر شماره: $id"
];
$uri = parse_url($_SERVER['REQUEST_URI'], PHP_URL_PATH);
foreach ($routes as $pattern => $handler) {
$pattern = "#^" . preg_replace('#\(\d\+\)#', '(\d+)', $pattern) . "$#";
if (preg_match($pattern, $uri, $matches)) {
array_shift($matches);
echo $handler(...$matches);
exit;
}
}
http_response_code(404);
echo "صفحه پیدا نشد.";
🔮 این یعنی:
بدون نیاز به فریمورکهایی مثل Laravel یا Symfony
بدون نصب چیزی!
فقط با توابع پایهی PHP، میتونی یه سیستم روتینگ داینامیک بسازی که pathهایی مثل /user/123 رو هندل کنه!
💪 قدرت واقعی PHP اینجاست:
برنامهنویسی فانکشنال ✅
هندرهای داینامیک ✅
پردازش regex توی URLها ✅
بدون وابستگی خارجی ✅
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#ترمینال #وب #توسعه_وب #php #لاراول #ابزار_توسعهدهنده
🔥9😐3❤1
تا حالا فک کردین سورس php خودتون رو مبهم سازی کنید!
یه روش مبهم سازی ساده به این صورت هست که قابل توسغه هم هست.
خروجی کد بالا میشه به این صورت که توابع مبهم سازی رو براتون نوشتم.
d3992bbf3e_PD9wz1HZ1gZWNw4byZ1nQWxpX3Y2VzbGFtz1V55hc2Fx3X3Sc7X3D8+
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#مبهم_سازی #وب #توسعه_وب #php #لاراول #ابزار_توسعهدهنده
یه روش مبهم سازی ساده به این صورت هست که قابل توسغه هم هست.
<?php
$original_code = base64_encode("<?php echo 'Ali EslamiNasab!'; ?>");
function obfuscate_php($code) {
$encoded = base64_encode($code);
$replacements = [
'a' => 'z1', 'e' => 'y2', 'i' => 'x3',
'o' => 'w4', 'u' => 'v5',
'A' => 'Z1', 'E' => 'Y2', 'I' => 'X3',
'O' => 'W4', 'U' => 'V5'
];
$obfuscated = str_replace(
array_keys($replacements),
array_values($replacements),
$encoded
);
$noise = bin2hex(random_bytes(5));
return $noise . '_' . $obfuscated;
}
function deobfuscate_php($obfuscated) {
$parts = explode('_', $obfuscated);
if (count($parts) !== 2) return false;
$encoded = $parts[1];
$replacements = [
'z1' => 'a', 'y2' => 'e', 'x3' => 'i',
'w4' => 'o', 'v5' => 'u',
'Z1' => 'A', 'Y2' => 'E', 'X3' => 'I',
'W4' => 'O', 'V5' => 'U'
];
$clean = str_replace(
array_keys($replacements),
array_values($replacements),
$encoded
);
return base64_decode($clean);
}
$obfuscated = obfuscate_php(base64_decode($original_code));
$deobfuscated = deobfuscate_php($obfuscated);
eval($deobfuscated);
?>
خروجی کد بالا میشه به این صورت که توابع مبهم سازی رو براتون نوشتم.
d3992bbf3e_PD9wz1HZ1gZWNw4byZ1nQWxpX3Y2VzbGFtz1V55hc2Fx3X3Sc7X3D8+
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#مبهم_سازی #وب #توسعه_وب #php #لاراول #ابزار_توسعهدهنده
👍5❤1
تحلیل پروژه قبل از برنامه نویسی: چرا مهمه؟
قبل از اینکه کد زدن رو شروع کنی، یه لحظه بشین و فکر کن: "دقیقاً چی میخوام بسازم؟" اینجوری هم وقتت کمتر هدر میره، هم استرس کمتری داری.
❌چرا تحلیل اولیه مهمه؟
1. شناخت نیازها: بدون برنامهریزی، ممکنه وسط کار بفهمی یه چیزایی جا افتاده یا اشتباه فهمیدی چی میخوای.
2. مدیریت زمان: اگر از اول بدونی چه مسیری داری، سریعتر و بهینهتر کد میزنی.
3. کاهش باگ: طراحی درست یعنی خطاهای کمتر و دیباگ راحتتر.
4. هماهنگی تیمی: اگه تیمی کار میکنی، همه میدونن قراره چی بسازن.
❌چطوری تحلیل کنم؟
- لیست نیازها: مثلاً در پروژه چت، نیاز به لاگین، اتاقهای چت و امنیت داده داری.
- ساختار پوشهها: مثل عکس بالا، از اول مشخص کنی چه فایلهایی لازمه (مثلاً
- ابزارها: ببین از چه کتابخونه ها یا تکنولوژیهایی میخوای استفاده کنی (مثلاً Flask برای بکند).
خلاصه: یه تحلیل ۱۰ دقیقهای قبل از کد زدن، ساعتها دردسر رو کم میکنه! 🚀
🔹 کانال ما را دنبال کنید:
@LaravelHUB
قبل از اینکه کد زدن رو شروع کنی، یه لحظه بشین و فکر کن: "دقیقاً چی میخوام بسازم؟" اینجوری هم وقتت کمتر هدر میره، هم استرس کمتری داری.
❌چرا تحلیل اولیه مهمه؟
1. شناخت نیازها: بدون برنامهریزی، ممکنه وسط کار بفهمی یه چیزایی جا افتاده یا اشتباه فهمیدی چی میخوای.
2. مدیریت زمان: اگر از اول بدونی چه مسیری داری، سریعتر و بهینهتر کد میزنی.
3. کاهش باگ: طراحی درست یعنی خطاهای کمتر و دیباگ راحتتر.
4. هماهنگی تیمی: اگه تیمی کار میکنی، همه میدونن قراره چی بسازن.
❌چطوری تحلیل کنم؟
- لیست نیازها: مثلاً در پروژه چت، نیاز به لاگین، اتاقهای چت و امنیت داده داری.
- ساختار پوشهها: مثل عکس بالا، از اول مشخص کنی چه فایلهایی لازمه (مثلاً
routes.py برای مسیرها یا templates برای صفحات). - ابزارها: ببین از چه کتابخونه ها یا تکنولوژیهایی میخوای استفاده کنی (مثلاً Flask برای بکند).
خلاصه: یه تحلیل ۱۰ دقیقهای قبل از کد زدن، ساعتها دردسر رو کم میکنه! 🚀
🔹 کانال ما را دنبال کنید:
@LaravelHUB
👍7
meno.zip
39 MB
معرفی داشبورد مدیریتی منو
Meno یک قالب html مدیریتی سبک و کاربردی است؛ که با فریمورک Bootstrap 5 ساخته شده و مناسب برای انواع پروژههای مدیریتی، پنلهای کاربری و اپلیکیشنهای تحت وب میباشد. این قالب برای فریلنسرها، مدیران پروژه و تیمهای پشتیبانی، استارتاپها و شرکتهای نرمافزاری مناسب است.
ویژگی های این قالب HTML داشبورد مدیریتی شامل 160 صفحه از پیش آماده شده، 16 داشبورد اختصاصی، صفحه احراز هویت اختصاصی، دارای داشبورد های داشبورد فروشگاههای آنلاین، سیستم مدیریت روابط مشتری، پنل مدیریت پروژه، داشبورد ارز دیجیتال و … می باشد.
🔹 کانال ما را دنبال کنید:
@LaravelHUB
Meno یک قالب html مدیریتی سبک و کاربردی است؛ که با فریمورک Bootstrap 5 ساخته شده و مناسب برای انواع پروژههای مدیریتی، پنلهای کاربری و اپلیکیشنهای تحت وب میباشد. این قالب برای فریلنسرها، مدیران پروژه و تیمهای پشتیبانی، استارتاپها و شرکتهای نرمافزاری مناسب است.
ویژگی های این قالب HTML داشبورد مدیریتی شامل 160 صفحه از پیش آماده شده، 16 داشبورد اختصاصی، صفحه احراز هویت اختصاصی، دارای داشبورد های داشبورد فروشگاههای آنلاین، سیستم مدیریت روابط مشتری، پنل مدیریت پروژه، داشبورد ارز دیجیتال و … می باشد.
🔹 کانال ما را دنبال کنید:
@LaravelHUB
🔥6🙏2
🚀 معرفی ابزار Zeal
اگه همیشه بین داکیومنتها و سرچ کردن توی اینترنت سردرگم میشی، این ابزار دقیقاً برای توست!
🔎 Zeal یک اپلیکیشن آفلاین داکیومنتخوان هست که میتونی مستندات زبانها و فریمورکهای مختلف مثل PHP، Laravel، Vue، React، Python و... رو فقط یکبار دانلود کنی و همیشه بدون نیاز به اینترنت بهشون دسترسی داشته باشی.
📌 قابلیتها:
جستجو سریع بین هزاران داکیومنت
دستهبندی مرتب برای زبانها و فریمورکها
مناسب برای برنامهنویسهایی که توی سفر یا محیطهای بدون اینترنت کار میکنن
🌐 دانلود از سایت رسمی:
https://zealdocs.org/download.html
گیت هاب:
https://github.com/zealdocs/zeal
🔹 کانال ما را دنبال کنید:
@LaravelHUB
اگه همیشه بین داکیومنتها و سرچ کردن توی اینترنت سردرگم میشی، این ابزار دقیقاً برای توست!
🔎 Zeal یک اپلیکیشن آفلاین داکیومنتخوان هست که میتونی مستندات زبانها و فریمورکهای مختلف مثل PHP، Laravel، Vue، React، Python و... رو فقط یکبار دانلود کنی و همیشه بدون نیاز به اینترنت بهشون دسترسی داشته باشی.
📌 قابلیتها:
جستجو سریع بین هزاران داکیومنت
دستهبندی مرتب برای زبانها و فریمورکها
مناسب برای برنامهنویسهایی که توی سفر یا محیطهای بدون اینترنت کار میکنن
🌐 دانلود از سایت رسمی:
https://zealdocs.org/download.html
گیت هاب:
https://github.com/zealdocs/zeal
🔹 کانال ما را دنبال کنید:
@LaravelHUB
👍2👎1
Landrick.zip
64 MB
قالب HTML Landrick با به روز ترین متد ها و به صورت کاملا واکنشگرا و بهینه برای نمایش در انواع صفحات نمایش طراحی شده و در تمامی دستگاه ها به صورت صحیح نمایش داده خواهد شد.
در کدنویسی قالب HTML لندریک از بوت استرپ نسخه 5 استفاده شده که از تمامی قابلیت های مرورگر نهایت استفاده را خواهید برد. طراحی حرفه ای و مدرن قالب صفحه لندینگ و نرم افزار HTML Landrick زیبایی خیره کننده ای به وبسایت صفحه لندینگ شما خواهد بخشید. در فارسی سازی این قالب HTML چند منظوره از 18 فونت بسیار زیبای فارسی استفاده شده و قابلیت استفاده انواع فونت های دیگر ایرانی در قالب می باشد، فقط کافیست کد مورد نظر را تغییر دهید.
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#template_html #قالب_شرکتی #قالب_وبلاگ #قالب
در کدنویسی قالب HTML لندریک از بوت استرپ نسخه 5 استفاده شده که از تمامی قابلیت های مرورگر نهایت استفاده را خواهید برد. طراحی حرفه ای و مدرن قالب صفحه لندینگ و نرم افزار HTML Landrick زیبایی خیره کننده ای به وبسایت صفحه لندینگ شما خواهد بخشید. در فارسی سازی این قالب HTML چند منظوره از 18 فونت بسیار زیبای فارسی استفاده شده و قابلیت استفاده انواع فونت های دیگر ایرانی در قالب می باشد، فقط کافیست کد مورد نظر را تغییر دهید.
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#template_html #قالب_شرکتی #قالب_وبلاگ #قالب
🔥2
frest_clean_minimal_bootstrap_admin_dashboard_template_v5_1_0.rar
148.2 MB
قالب HTML Frest با بهروزترین متدها و به صورت کاملاً واکنشگرا و بهینه برای نمایش در انواع صفحات طراحی شده و در تمامی دستگاهها به شکل صحیح نمایش داده خواهد شد. در کدنویسی قالب HTML فرست از Bootstrap نسخه 5 استفاده شده که بیشترین سازگاری و کارایی را با مرورگرهای مختلف فراهم میکند.
طراحی حرفهای و مدرن قالب داشبورد HTML Frest، زیبایی و کارایی خیرهکنندهای به وبسایت یا پنل مدیریتی شما خواهد بخشید.
این قالب در سه نسخهی HTML، Laravel و ASP.NET ارائه شده که دست شما را برای انتخاب در هر پروژه باز میگذارد.
✅ آخرین نسخهی منتشر شده قالب Frest، 5.1.0 میباشد.
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#template_html #قالب_داشبورد #قالب_شرکتی #frest Laravel #ASPnet
طراحی حرفهای و مدرن قالب داشبورد HTML Frest، زیبایی و کارایی خیرهکنندهای به وبسایت یا پنل مدیریتی شما خواهد بخشید.
این قالب در سه نسخهی HTML، Laravel و ASP.NET ارائه شده که دست شما را برای انتخاب در هر پروژه باز میگذارد.
✅ آخرین نسخهی منتشر شده قالب Frest، 5.1.0 میباشد.
🔹 کانال ما را دنبال کنید:
@LaravelHUB
#template_html #قالب_داشبورد #قالب_شرکتی #frest Laravel #ASPnet
❤4