منبع اصلی نوشتار زیر در این لینک قرار دارد

اضافه کردن کلاس‌ها و Helperهای شخصی به Laravel

سلام

یکی از ویژگی‌های فریمورک‌ها، قابلیت اضافه‌ کردن کلاس‌ها و کتابخانه‌هاییست که توسط خودتون یا فرد دیگری نوشته شده. لاراول تو این زمینه دستتونو کاملا باز گذاشته.

یکی از اشکال این کتابخونه‌ها یا کلاس‌ها پکیج‌ها هستند که در آینده در موردشون بیشتر صحبت می‌کنیم. ولی امروز می خواهیم در مورد اضافه کردن کلاس‌های دم دستی و یا Helperها به Laravel صحبت کنیم.

فرض کنید یه سری تابع و متد داریم که برای راحت‌تر شدن کارمون و تمیزکاری اونارو یه جا بنویسم و بعد ازشون استفاده کنیم. راحت‌ترین حالت ممکن اینه که بریناون تابع‌ها رو به فایل route.php, filter.php, start.php و یا هر فایل دیگه‌ای که موقع اجرای لاراول مورد استفاده هستند بنویسم و و در جاهای دیگه ازشون استفاده کنیم. ولی این کار کدمونو کثیف و نامرتب می‌کنه. 

برای افزودن یک کلاس Helper به این ترتیب عمل می‌کنیم:

ابتدا یک دایرکتوری به دایرکتوری app اضافه می‌کنیم مثلن به اسم helpers:

mkdir laravel/app/helpers

بعد از اون یه فایل php داخل دایرکتوری مذکور ایجاد کرده و هر اسمی خواستیم روش میذاریم، فقط یادتون باشه بعدن با این اسم کار داریم. مثلن یه فایل میسازیم به اسم Helper.php

بعد از اضافه کردن فایل داخل اون شروع می‌کنیم به نوشتن متدهامون. یادتون باشه اون فایل Helper.php داخلش یه کلاس به همین نام باید باشه اونم از نوع static، به این صورت:

<?php
class Helper {
public static helloWorld() {
return "hello world";
}
}

هر چند‌تا متد خاصتین میتونین توش ایجاد کنید ولی بازم یادتون باشه باید همشون از نوع static باشن.

حالا تو هر جای پروژه‌تون میتونید به این شکل از کلاس Helperتون استفاده کنید، مثلن:

echo Helper::helloWorld();

ولی موقع اجرا میبینید که بهتون اخطار میده که همچین کلاسی وجود نداره. خب درسته چون ما این کلاسمونو داخل پروژه load نکردیم. برای این کار فایل composer.json اصلی لاراولو باز می‌کنیم و آدرس فولدر Helperمون رو در قسمت autoload -> classmap اضافه می‌کنیم. مثل این:

	"autoload": {
"classmap": [
"app/commands",
"app/controllers",
"app/models",
"app/database/migrations",
"app/database/seeds",
"app/tests/TestCase.php",
            "app/helpers"
]

بعد از اضافه کردن و ذخیره کرده فایل composer.json، ترمینالو باز کرده( جایی که فایل composer.json وجود داره) و عبارت زیر را وارد می‌کنیم:

composer dump-autload

به همین راحتی الان می‌تونید از Helperتون تو پروژه‌تون به راحتی استفاده کنید و یادتون باشه از لاراول لذت ببرین.

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

اضافه کردن کلاس‌ها و Helperهای شخصی به Laravel

سلام یکی از ویژگی‌های فریمورک‌ها، قابلیت اضافه‌ کردن کلاس‌ها و کتابخانه‌هاییست که توسط خودتون یا فرد دیگری نوشته شده. لاراول تو این زمینه دستتونو کاملا باز گذاشته. یکی از اشکال این کتابخونه‌ها یا کلاس‌ها پکیج‌ها هستند که در آینده در موردشون بیشتر صحبت می‌کنیم. ولی امروز می خواهیم در مورد اضافه کردن کلاس‌های دم دستی […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

افزودن قابلیت Auto Complete به IDEها برای توسعه لاراول

سلام

یکی از قابلیت‌هایی که برنامه‌نویسان از اون در هنگام کدنویسی خیلی بهره‌ می‌برند، قابلیت تکمیل خودکار عباراته. تمام IDE‌ها این قابلیت رو دارن ولی بعضی‌هاشون خیلی هوشمندن مثل Visual Studio و Jetbrain PhpStorm و بعضی‌هاشون امکانات و هوشمندی کمتری دارند، مثل Sublime ُText.

هوشمندی ویرایشگر‌های کد برای Completion شامل امکانات موجود در زبان، متغیر‌ها، توابع و کلاس‌ها هست ولی بعضی موقع بعضی چیزارو تشخیص نمی‌دن. مثل کلاس‌ها یا فایل‌هایی که در هنگام اجرا قراره کنار هم قرار بگیرند و یا ارث‌بری‌های کلاس‌های مختلف.

یکی از فریمورک‌هایی که این روزا خیلی سر و صدا کرده لاراوله و بالطبع برنامه‌نویسان دوست دارن تو محیطی کد بزنن که بیشترین امکاناتو در اختیارشون قرار بده. خوب به صورت پیش‌فرض IDEهایی مثل PhpStorm, Eclipse, Aptana, Netbaens تا حدودی هوشمندی دارن و کم و بیش کلاس‌ها و فایل‌های یک پروژه رو تشخیص می‌دن ولی برای بهره‌برداری هرچه بیشتر باید یه کارایی بکنید تا اسکریپتتون به صورت کامل توسط IDE پشتیبانی بشه.

خوشبختانه برای فریمورک لاراول یک پکیج وجود داره که با نصبش به راحتی قدرت کامل فریمورک رو روی IDE بهتون میده.  Laravel IDE Helper، یه پکیجیه که مثل بقیه پکیج‌های لاراول میتونین اونو با composer نصب کنین و با نوشتن یکی-دو خط کد و تنظیمات از این مهم بی ‌نصیب نمونین.

برای شروع ابتدا فایل composer.json اصلی پروژه‌تون رو باز کنید و در قسمت require این خط کد رو که نام پکیج مربوطه‌س وارد کنید:

"barryvdh/laravel-ide-helper": "1.*

بعد با استفاده از ترمینال(command-line) دستور زیر را وارد کنید (در دایرکتوری اصلی پروژه) :

 composer update

بعد از اون وارد فایل laravel/app/config/app.php بشین و عبارت زیر را به آرایه providers اضافه کنید:

'BarryvdhLaravelIdeHelperIdeHelperServiceProvider',

بعد از این کار دوباره وارد ترمینال شده و عبارت زیر را وارد کنید  (در دایرکتوری اصلی پروژه) :

php artisan ide-helper:generate

الان دیگه محیط توسعه نرم‌افزارتون یا همون IDE به راحتی تمام کلاس‌ها و توابع و اشیا رو شناسایی می‌کنه و می‌تونین از کد زدن لذت ببرین.

برای اطلاعات بیشتر و تنظیمات دیگه به این آدرس برید.

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

مشکلی که هنگام نصب lamp ممکن است پیش اید

نوشته شده توسط ایمان دیده ور.

سلام به همه ی لینوکسی های عزیز مخصوصا ابونتویی ها و سلام مخصوص تر به طراحان وبسایت. شاید برای شما هم پیش اومده باشه که بعد از نصب lamp نتونید phpmyadmin رو اجرا کنید و ارور دریافت کنید لینک اموزش […]

نوشته مشکلی که هنگام نصب lamp ممکن است پیش اید اولین بار در لینوکس سیزن پدیدار شد.

ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

معرفی کنترل پنل Virtualmin به همراه آموزش نصب !‌(Video)

اگه با سرور های لینوکسی زیاد سر و کار داشته باشید حتما اسم webmin به گوشتون خورده و باهاش کار کردین . وب مین یه رابط کاربری و محیط مدیریت واسه لینوکس هست که انجام کارای وقت گیر رو ساده تر و سریع تر میکنه . مثل کانفیگ فایل سرور , وب سرور , آپلود […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

PHP Environment

معرفی چندتا  ابزار برای توسعه راحت تر php… اگر با nodejs ویا python آشنا باشید احتمالا nvm و virtualenv رو می شناسید. وقتی که قراره روی یک ماشین develop انجام بدید ولی برای هر کدوم از پروژه هاتون به ورژن خاص از php,python ویا node احتیاج داشته باشید switch کردن راحت بین این ها میشه […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

ایمیل موقت با tempmail

دیروز کمی فرصت شد تا روی یکی از کارهایی که دوست داشتم زمان بگذارم و بنویسمش. سرویس ایمیل موقت با این تفاوت که ایمیل های ورودی رو در یک بازه دو ساعته براتون forward می کنه. بیشتر موقع ثبت نام در سایت هایی که فقط یکبار گذرتون بهش افتاده یا موقع دانلود و … به […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

برپاسازی LAPM بر روی فدورا 20

در این پست چگونگی نصب و پیکربندی LAMP Server را بر روی فدورا 20 توضیح داده می شود. LAMP مخفف Linux Apache MySQL PHP است که بستری را برای توسعه وب سایت ها و برنامه های تحت وب فراهم می کند. اکثر وب سرور ها که میزبانی صفحه های وب را انجام می دهند از […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

حل مشکل نمایش تاریخ جلالی در وردپرس فارسی

آپدیت مهم: به پیش‌نهاد آقای غیاثی در کامنت‌ها الان از wp-paradise به جای wp-jalali استفاده می‌کنم و خیلی هم راضیم. این مشکلات رو هم نداره. هر سری که این افزونه تاریخ جلالی رو آپدیت می‌کنیم، باید این تغییرات رو انجام بدیم تا افزونه درست کار کنه. من نمی‌دونم چرا تو اسکریپت پی‌اچ‌پی اصلی یه بار […] ادامه مطلب

منبع اصلی نوشتار زیر در این لینک قرار دارد

مروری بر امکانات معرفی شده بر روی Red Hat Enterprise Linux 7

بالاخره طبق قول قبلی شرکت Red Hat مبنی بر انتشار اولیه RHEL 7 – Red Hat Enterprise Linux 7 در شش ماهه دوم سال ۲۰۱۳ ، سیستم عامل اینترپرایز این شرکت نسخه بتا ۱ آن منتشر شد. قبلا در این پست بر روی امکانات معرفی شده RHEL 7 در کنفرانس سالانه Red Hat Summit مروری […] ادامه مطلب