खोज…
परिचय
टिप्पणियों
बस कुछ संकेत:
- सेवा प्रदाता द्वारा दो बार कॉल किए जाने पर अपवाद को रोकने के लिए हमने फ़ंक्शन परिभाषाओं को एक चेक (
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
लौटेगा।