खोज…


परिचय

कस्टम सहायकों को जोड़ना आपकी विकास गति में आपकी सहायता कर सकता है। हालांकि इस तरह के सहायक कार्यों को लिखते समय कुछ बातों का ध्यान रखना चाहिए, इसलिए यह ट्यूटोरियल है।

टिप्पणियों

बस कुछ संकेत:

  • सेवा प्रदाता द्वारा दो बार कॉल किए जाने पर अपवाद को रोकने के लिए हमने फ़ंक्शन परिभाषाओं को एक चेक ( function_exists ) के भीतर रखा है।
  • एक वैकल्पिक तरीका composer.json फ़ाइल से हेल्पर्स फ़ाइल को पंजीकृत कर रहा है। आप लार्वा ढांचे से तर्क को कॉपी कर सकते हैं।

document.php

<?php

if (!function_exists('document')) {
    function document($text = '') {
        return $text;
    }
}

एक help.php फ़ाइल बनाएँ, चलो मान लेते हैं कि यह app/Helpers/document.php में रहता है। आप कई सहायकों को एक फ़ाइल में डाल सकते हैं (यह है कि लारवेल इसे कैसे करता है) या आप उन्हें नाम से विभाजित कर सकते हैं।

HelpersServiceProvider.php

अब एक सर्विस प्रोवाइडर बनाते हैं। आइए इसे app/Providers तहत रखें:

<?php

namespace App\Providers;

class HelpersServiceProvider extends ServiceProvider
{
    public function register()
    {
        require_once __DIR__ . '/../Helpers/document.php';
    }
}

उपरोक्त सेवा प्रदाता हेल्पर्स फ़ाइल को लोड करता है और आपके कस्टम फ़ंक्शन को स्वचालित रूप से पंजीकृत करता है। कृपया आप में इस HelpersServiceProvider रजिस्टर सुनिश्चित करें कि आपके config/app.php तहत providers :

'providers' => [
     // [..] other providers
     App\Providers\HelpersServiceProvider::class,
]

उपयोग

अब आप अपने कोड में फ़ंक्शन document() हर जगह कर सकते हैं, उदाहरण के लिए ब्लेड टेम्पलेट में। यह उदाहरण केवल उसी स्ट्रिंग को लौटाता है जिसे वह तर्क के रूप में प्राप्त करता है

<?php
Route::get('document/{text}', function($text) { 
    return document($text);
});

अब अपने ब्राउज़र में /document/foo पर जाएं ( php artisan serve या valet उपयोग करें), जो foo लौटेगा।



Modified text is an extract of the original Stack Overflow Documentation
के तहत लाइसेंस प्राप्त है CC BY-SA 3.0
से संबद्ध नहीं है Stack Overflow