تابع rescue در لاراول
تابع rescue() یک Helper Function برای مدیریت ایمن Exceptionها است که اجازه میدهد بدون استفاده از try/catch صریح، یک عملیات پرریسک را اجرا کرده و در صورت بروز خطا، مقدار جایگزین (fallback) دریافت کنید.
#laravel
#tip
اطلاعات بیشتر در 😎👇
@developerManifest
تابع rescue() یک Helper Function برای مدیریت ایمن Exceptionها است که اجازه میدهد بدون استفاده از try/catch صریح، یک عملیات پرریسک را اجرا کرده و در صورت بروز خطا، مقدار جایگزین (fallback) دریافت کنید.
rescue(callable $callback, mixed $rescue = null, bool $report = true)
$content = rescue(
fn () => file_get_contents(storage_path('data.json')),
'{}'
);
$userName = rescue(
fn () => User::findOrFail($id)->name,
fn () => 'Guest'
);
$result = rescue(
fn () => externalApiCall(),
null,
false
);
$price = rescue(
fn () => $product->prices->first()->amount,
0
);
#laravel
#tip
اطلاعات بیشتر در 😎👇
@developerManifest
👌1
پِرِستو: جایگزینی سریع و هوشمند برای Composer در PHP
پِرِستو یک برنامه مدیریت وابستگی برای PHP است که بهعنوان جایگزینی سریع برای Composer طراحی شده است.
این ابزار با زبان Go نوشته شده و با فایلهای composer.json و composer.lock کاملاً سازگار است.
سرعت نصب بستهها در پِرِستو تا ۲۰ برابر بیشتر از Composer است،
در پروژههای بزرگ مانند Laravel، زمان نصب از ۴۲ ثانیه به ۳.۸ ثانیه کاهش یافته است.
#php
#tools
اطلاعات بیشتر در 😎👇
@developerManifest
پِرِستو یک برنامه مدیریت وابستگی برای PHP است که بهعنوان جایگزینی سریع برای Composer طراحی شده است.
این ابزار با زبان Go نوشته شده و با فایلهای composer.json و composer.lock کاملاً سازگار است.
سرعت نصب بستهها در پِرِستو تا ۲۰ برابر بیشتر از Composer است،
در پروژههای بزرگ مانند Laravel، زمان نصب از ۴۲ ثانیه به ۳.۸ ثانیه کاهش یافته است.
https://github.com/paramientos/presto
#php
#tools
اطلاعات بیشتر در 😎👇
@developerManifest
👍4
ماگو (Mago) یک ابزار توسعه برای PHP است که با زبان Rust نوشته شده و قابلیت های زیر رو دارد :
Formatter
کدهای PHP شما را به صورت استاندارد و مرتب قالببندی میکند.
Linter
مشکلات سبک کدنویسی و ناسازگاریها را پیدا میکند.
Static Analyzer
بدون اجرای کد، خطاهای نوع و باگهای منطقی را تشخیص میدهد.
Architectural Guard
قوانین وابستگیها و ساختار پروژه را بررسی میکند.
نحوه نصب و استفاده
راهنمای هوش مصنوعی
#php
#analyzer
#tools
اطلاعات بیشتر در 😎👇
@developerManifest
Formatter
کدهای PHP شما را به صورت استاندارد و مرتب قالببندی میکند.
Linter
مشکلات سبک کدنویسی و ناسازگاریها را پیدا میکند.
Static Analyzer
بدون اجرای کد، خطاهای نوع و باگهای منطقی را تشخیص میدهد.
Architectural Guard
قوانین وابستگیها و ساختار پروژه را بررسی میکند.
نحوه نصب و استفاده
https://mago.carthage.software/guide/installation
راهنمای هوش مصنوعی
https://context7.com/websites/mago_carthage_software_guide?tab=chat
#php
#analyzer
#tools
اطلاعات بیشتر در 😎👇
@developerManifest
🔥1
راهنمای کامل هوک ها (Hook) در لایووایر
#livewire
#laravel
#tip
اطلاعات بیشتر در 😎👇
@developerManifest
https://noscriptbinary.com/livewire/livewire-lifecycle-hooks-guide
#livewire
#laravel
#tip
اطلاعات بیشتر در 😎👇
@developerManifest
🔧 اگر با لاراول کار میکنی و دنبال راهی برای بررسی عملکرد و پروفایلگیری دقیق هستی، پروژه LaravelProfileProvider رو از دست نده!
این ابزار سبک و کاربردی بهت کمک میکنه تا رفتار اپلیکیشنت رو بهتر بشناسی، مشکلات پنهان رو کشف کنی و تجربه کاربری رو بهینهسازی کنی.
📊 با قابلیتهای قابل توسعه و طراحی تمیز، آمادهست تا وارد پروژههای
حرفهای بشه.
📌 قابلیتها:
⏱ اندازهگیری زمان اجرا هر سرویسپراوایدر
🧠 تحلیل مصرف حافظه در لحظه ثبت سرویسها
🧪 بررسیهای تشخیصی برای کشف رفتارهای غیرمنتظره
🔍 پروفایلگیری دقیق از فرآیند بوت شدن اپلیکیشن
📎 لینک گیتهاب:
github.com/saeedvir/LaravelProfileProvider
#laravel
#package
#optimize
اطلاعات بیشتر در 😎👇
@DeveloperManifest
این ابزار سبک و کاربردی بهت کمک میکنه تا رفتار اپلیکیشنت رو بهتر بشناسی، مشکلات پنهان رو کشف کنی و تجربه کاربری رو بهینهسازی کنی.
📊 با قابلیتهای قابل توسعه و طراحی تمیز، آمادهست تا وارد پروژههای
حرفهای بشه.
📌 قابلیتها:
⏱ اندازهگیری زمان اجرا هر سرویسپراوایدر
🧠 تحلیل مصرف حافظه در لحظه ثبت سرویسها
🧪 بررسیهای تشخیصی برای کشف رفتارهای غیرمنتظره
🔍 پروفایلگیری دقیق از فرآیند بوت شدن اپلیکیشن
📎 لینک گیتهاب:
github.com/saeedvir/LaravelProfileProvider
php artisan profile:providers --top=10
#laravel
#package
#optimize
اطلاعات بیشتر در 😎👇
@DeveloperManifest
👍1
اهراز هویت جدید در NIC.IR
اگر حساب کاربری nic.ir دارید و صاحب دامنه ملی هستید ، حتما پس از ورود به سامانه نسبت به تایید سطح 2 احراز هویت اقدام کنید.
برای تسریع در کار ، می توانید قبل از آن حتما نرم افزار "سامانه هدا" (در کافه بازار و مایکت هست) را در تلفن همراه خود نصب کنید.
برای کاربران IOS این برنامه سیبچه موجود هست.
فرایند احراز هویت توسط هوش مصنوعی انجام می شود و کمتر از 5 دقیقه وقت لازم دارد.
در طی فرایند نیاز به پرداخت 20 هزار تومان است.
اگر حساب کاربری nic.ir دارید و صاحب دامنه ملی هستید ، حتما پس از ورود به سامانه نسبت به تایید سطح 2 احراز هویت اقدام کنید.
برای تسریع در کار ، می توانید قبل از آن حتما نرم افزار "سامانه هدا" (در کافه بازار و مایکت هست) را در تلفن همراه خود نصب کنید.
برای کاربران IOS این برنامه سیبچه موجود هست.
فرایند احراز هویت توسط هوش مصنوعی انجام می شود و کمتر از 5 دقیقه وقت لازم دارد.
در طی فرایند نیاز به پرداخت 20 هزار تومان است.
روش های بهینه در Eloquent - بخش یک
این مطلب به طور خلاصه درباره استفاده از get و chunk گفته که پیشنهاد می کنم ببینید اما اگر بخواهم به صورت فارسی توضیح بدم :
مشکلِ استفاده از متد get برای داده های زیاد ، حجم زیاد اشغال حافظه است که راه حل جایگزین،استفاده از متدهای chunk و cursor هست.
اگر قصد دارید همزمان رکوردها را بهروزرسانی کنید، بهتر است از chunkById استفاده کنید.
روش دیگر متد cursor هست که بهجای بارگذاری دستهای، میتواند دادهها را تکتک بخواند.
🔗 مثال های بیشتر در بخش کامنت ها
#laravel
#optimize
#eloquent
.
این مطلب به طور خلاصه درباره استفاده از get و chunk گفته که پیشنهاد می کنم ببینید اما اگر بخواهم به صورت فارسی توضیح بدم :
مشکلِ استفاده از متد get برای داده های زیاد ، حجم زیاد اشغال حافظه است که راه حل جایگزین،استفاده از متدهای chunk و cursor هست.
User::where('active', true)
->chunk(1000, function ($users) {
foreach ($users as $user) {
// Process user
}
});
User::where('active', true)
->chunkById(1000, function ($users) {
foreach ($users as $user) {
// Guaranteed unique processing
}
});اگر قصد دارید همزمان رکوردها را بهروزرسانی کنید، بهتر است از chunkById استفاده کنید.
روش دیگر متد cursor هست که بهجای بارگذاری دستهای، میتواند دادهها را تکتک بخواند.
foreach (User::where('active', true)->cursor() as $user) {
// One model in memory at a time
}🔗 مثال های بیشتر در بخش کامنت ها
#laravel
#optimize
#eloquent
.
🔥5
مفهوم Memoization در کش لاراول
Memoization
یک تکنیک بهینهسازی است که نتیجه یک عملیات را برای مدت زمان اجرای همان درخواست در حافظه PHP نگه میدارد تا در درخواستهای بعدی نیاز به اجرای مجدد یا واکشی از منبع (مثلاً Redis) نباشد. این یعنی:
اولین بار مقدار داده از کش خوانده میشود (مثلاً Redis یا فایل).
در همان چرخهی اجرای برنامه، بارهای بعدی مقدار از حافظه موقت (Memory) برگردانده میشود بدون اینکه به کش واقعی مراجعه شود.
این روش مخصوص زمانی است که در همان درخواست چند بار یک کلید کش را میخوانید و میخواهی تعداد درخواستها به سرور کش را کاهش بدهید.
زمانی که از متدهایی استفاده میشود که مقدار را تغییر میدهند (مثل put,…):
مقدار Memoized (ذخیره در حافظه) مربوط به آن کلید فراموش (clear) میشود.
سپس تغییر به کش واقعی اعمال میشود.
در درخواست بعدی مقدار تازه از کش واقعی خوانده شده و دوباره در حافظه ذخیره میشود.
👈مثال در کامنت ها
@developerManifest
Memoization
یک تکنیک بهینهسازی است که نتیجه یک عملیات را برای مدت زمان اجرای همان درخواست در حافظه PHP نگه میدارد تا در درخواستهای بعدی نیاز به اجرای مجدد یا واکشی از منبع (مثلاً Redis) نباشد. این یعنی:
اولین بار مقدار داده از کش خوانده میشود (مثلاً Redis یا فایل).
در همان چرخهی اجرای برنامه، بارهای بعدی مقدار از حافظه موقت (Memory) برگردانده میشود بدون اینکه به کش واقعی مراجعه شود.
این روش مخصوص زمانی است که در همان درخواست چند بار یک کلید کش را میخوانید و میخواهی تعداد درخواستها به سرور کش را کاهش بدهید.
use Illuminate\Support\Facades\Cache;
//without Cache Store
$value = Cache::memo()->get('key');
//with Cache Store
$value = Cache::memo('redis')->get('key');
زمانی که از متدهایی استفاده میشود که مقدار را تغییر میدهند (مثل put,…):
مقدار Memoized (ذخیره در حافظه) مربوط به آن کلید فراموش (clear) میشود.
سپس تغییر به کش واقعی اعمال میشود.
در درخواست بعدی مقدار تازه از کش واقعی خوانده شده و دوباره در حافظه ذخیره میشود.
👈مثال در کامنت ها
@developerManifest
👍2
آموزش Cloudflare Tunnel برای به اشتراک گذاری Localhost
فرض کنید بخواهید یک پروژه که روی لوکال هاست هست را از طریق اینترنت دسترس پذیر کنید.
همین طور که اطلاع دارید ، یکی از راه ها ngrok بود.
این یک روش دیگر هست که با استفاده از cloudflare این کار رو می کنید.
ویدیو آموزشی
👈 ویدیو به زودی در کانال قرار می گیرد.
اطلاعات بیشتر 😎👇
@developerManifest
#آموزش
#نکته
#ویدیو
فرض کنید بخواهید یک پروژه که روی لوکال هاست هست را از طریق اینترنت دسترس پذیر کنید.
همین طور که اطلاع دارید ، یکی از راه ها ngrok بود.
این یک روش دیگر هست که با استفاده از cloudflare این کار رو می کنید.
ویدیو آموزشی
https://www.youtube.com/watch?v=etluT8UC-nw
https://developers.cloudflare.com/cloudflare-one/networks/connectors/cloudflare-tunnel/do-more-with-tunnels/local-management/create-local-tunnel/
👈 ویدیو به زودی در کانال قرار می گیرد.
اطلاعات بیشتر 😎👇
@developerManifest
#آموزش
#نکته
#ویدیو
👍2
یه بازی موبایلی که با NativePHP توسعه داده شده
#dev_news
اطلاعات بیشتر در 😎👇
@developerManifest
https://freek.dev/2983-i-built-a-native-mobile-word-game-in-two-weeks
https://github.com/spatie/wordstockt.com?tab=readme-ov-file
https://play.google.com/store/apps/details?id=com.wordstockt.app
#dev_news
اطلاعات بیشتر در 😎👇
@developerManifest
https://medium.com/@developerawam/datatable-livewire-2-0-now-supporting-livewire-4-with-bootstrap-5-templates-0f565bcb495f
#dev_news
اطلاعات بیشتر در 😎👇
@developerManifest
https://github.com/restu-lomboe/datatable-livewire
#dev_news
اطلاعات بیشتر در 😎👇
@developerManifest
Medium
DataTable Livewire 2.0: Now Supporting Livewire 4 with Bootstrap 5+ Templates
DataTable Livewire 2.0 now supports Livewire 4 with Bootstrap 5+ templates, improved type hinting, and bug fixes for better Laravel dev
یک راهنمای عملی برای تست NativePHP
برگرفته از Context7
Step-by-Step Guide to Create Android App with NativePHP
Step 1: Environment Setup
Before starting, ensure your system has the required tools:
Android Studio & SDK Setup
Download and install Android Studio 2024.2.1 or later from the official website
Open Android Studio → Tools → SDK Manager
Under SDK Platforms tab: Install Android SDK platform API 33 or higher (Android 15/API 35 is latest)
Under SDK Tools tab: Install Android SDK Build-Tools and Android SDK Platform-Tools
Set Environment Variables
On macOS:
On Windows:
Verify Setup
Step 2: Install NativePHP Mobile Package
Step 3: Initialize NativePHP
This command:
Sets up and configures your Laravel application for iOS and Android development
Creates the necessary NativePHP structure
May prompt you to install ICU-enabled PHP binaries (choose yes if using the intl extension)
Step 4: Generate Android Signing Credentials
This generates:
JKS keystore file
Signing keys
Automatically updates .env file
Adds keystore to .gitignore for security
Saves credentials in nativephp/credentials/android/
Step 5: Run Your Android App
Or use the shorthand:
This command:
Packages your Laravel app
Builds the Android application
Installs and runs it on a connected device or emulator
Step 6: Build for Distribution (Optional)
Build a Release APK:
Build an Android App Bundle (AAB) for Google Play Store:
Summary
✅ Setup Android Studio & SDK (API 33+)
✅ Configure environment variables (JAVA_HOME, ANDROID_HOME, PATH)
✅ Install NativePHP Mobile: composer require nativephp/mobile
✅ Initialize: php artisan native:install
✅ Generate credentials: php artisan native:credentials android
✅ Run app: php artisan native:run
✅ Package for distribution (when ready)
Your Laravel app will now run as a native Android application!
#dev_news
#nativePHP
اطلاعات بیشتر در 😎👇
@developerManifest
برگرفته از Context7
https://context7.com/websites/nativephp_mobile_3?tab=chat
Step-by-Step Guide to Create Android App with NativePHP
Step 1: Environment Setup
Before starting, ensure your system has the required tools:
Android Studio & SDK Setup
Download and install Android Studio 2024.2.1 or later from the official website
Open Android Studio → Tools → SDK Manager
Under SDK Platforms tab: Install Android SDK platform API 33 or higher (Android 15/API 35 is latest)
Under SDK Tools tab: Install Android SDK Build-Tools and Android SDK Platform-Tools
Set Environment Variables
On macOS:
export JAVA_HOME=$(/usr/libexec/java_home -v 17)
export ANDROID_HOME=$HOME/Library/Android/sdk
export PATH=$PATH:$JAVA_HOME/bin:$ANDROID_HOME/emulator:$ANDROID_HOME/tools:$ANDROID_HOME/tools/bin:$ANDROID_HOME/platform-tools
On Windows:
set ANDROID_HOME=C:\Users\yourname\AppData\Local\Android\Sdk
set PATH=%PATH%;%JAVA_HOME%\bin;%ANDROID_HOME%\platform-tools
set JAVA_HOME=C:\Program Files\Microsoft\jdk-17.0.8.7-hotspot
Verify Setup
java -version
adb devices
Step 2: Install NativePHP Mobile Package
composer require nativephp/mobile
Step 3: Initialize NativePHP
php artisan native:install
This command:
Sets up and configures your Laravel application for iOS and Android development
Creates the necessary NativePHP structure
May prompt you to install ICU-enabled PHP binaries (choose yes if using the intl extension)
Step 4: Generate Android Signing Credentials
php artisan native:credentials android
This generates:
JKS keystore file
Signing keys
Automatically updates .env file
Adds keystore to .gitignore for security
Saves credentials in nativephp/credentials/android/
Step 5: Run Your Android App
php artisan native:run
Or use the shorthand:
./native run
# or
php native run
This command:
Packages your Laravel app
Builds the Android application
Installs and runs it on a connected device or emulator
Step 6: Build for Distribution (Optional)
Build a Release APK:
php artisan native:package android \
--keystore=/path/to/my-app.keystore \
--keystore-password=mykeystorepassword \
--key-alias=my-app-key \
--key-password=mykeypassword
Build an Android App Bundle (AAB) for Google Play Store:
php artisan native:package android \
--build-type=bundle \
--keystore=/path/to/my-app.keystore \
--keystore-password=mykeystorepassword \
--key-alias=my-app-key \
--key-password=mykeypassword
Summary
✅ Setup Android Studio & SDK (API 33+)
✅ Configure environment variables (JAVA_HOME, ANDROID_HOME, PATH)
✅ Install NativePHP Mobile: composer require nativephp/mobile
✅ Initialize: php artisan native:install
✅ Generate credentials: php artisan native:credentials android
✅ Run app: php artisan native:run
✅ Package for distribution (when ready)
Your Laravel app will now run as a native Android application!
#dev_news
#nativePHP
اطلاعات بیشتر در 😎👇
@developerManifest
یک مطلب جالب درباره Laravel 13:
https://www.souysoeng.com/2026/01/laravel-13-new-era-of-modern-php.html?m=1
✉️
#dev_news
#laravel
اطلاعات بیشتر در 😎👇
@developerManifest
https://www.souysoeng.com/2026/01/laravel-13-new-era-of-modern-php.html?m=1
نظر شما به عنوان توسعه دهنده در اکوسیستم لاراول چیه؟
#dev_news
#laravel
اطلاعات بیشتر در 😎👇
@developerManifest
👎1
معرفی
Hypervel
بخشی از توضیحات این پروژه
به نظر عملکرد فوق العاده ای نسبت به هسته اصلی لاراول دارد.
پیشنهاد می کنم صفحه اش را یک نگاه بیاندازید.
#laravel
#dev_news
اطلاعات بیشتر 😎👇
@developerManifest
Hypervel
Hypervel is a Laravel-style PHP framework with native coroutine support for ultra-high performance.
Hypervel ports many core components from Laravel while maintaining familiar usage patterns, making it instantly accessible to Laravel developers. The framework combines the elegant and expressive development experience of Laravel with the powerful performance benefits of coroutine-based programming. If you're a Laravel developer, you'll feel right at home with this framework, requiring minimal learning curve.
This is an ideal choice for building microservices, API gateways, and high-concurrency applications where traditional PHP frameworks often encounter performance constraints.
بخشی از توضیحات این پروژه
به نظر عملکرد فوق العاده ای نسبت به هسته اصلی لاراول دارد.
پیشنهاد می کنم صفحه اش را یک نگاه بیاندازید.
#laravel
#dev_news
اطلاعات بیشتر 😎👇
@developerManifest
چه طور مدل های Ollama را به صورت لینک مستقیم دانلود کنیم ؟
وارد آدرس زیر بشید
بعد باید اسم مدل و نسخه اون رو از سایت Ollama پیدا کنید :
مثلا برای deepseek-coder
می تونیم از این ها استفاده کنیم :
بعد لینک هایی را که میده رو داخل نرم افزار مدیریت دانلود قرار بدید و به راحتی دانلود کنید.
فایل های دانلودی را داخل پوشه مدل های برنامه قرار بدید.
نمونه از سایت soft98.ir را اینجا ببینید.(بخش فعال سازی)
#dev_tip
#AI
#dev_news
اطلاعات بیشتر در 😎👇
@developerManifest
وارد آدرس زیر بشید
https://ollama-direct-downloader.vercel.app/
بعد باید اسم مدل و نسخه اون رو از سایت Ollama پیدا کنید :
مثلا برای deepseek-coder
https://ollama.com/library/deepseek-coder
می تونیم از این ها استفاده کنیم :
deepseek-coder:latest
deepseek-coder:6.7b
deepseek-coder:33b
deepseek-coder:1.3b
بعد لینک هایی را که میده رو داخل نرم افزار مدیریت دانلود قرار بدید و به راحتی دانلود کنید.
فایل های دانلودی را داخل پوشه مدل های برنامه قرار بدید.
نمونه از سایت soft98.ir را اینجا ببینید.(بخش فعال سازی)
#dev_tip
#AI
#dev_news
اطلاعات بیشتر در 😎👇
@developerManifest