Skip to content
Readerstacks logo Readerstacks
  • Home
  • Softwares
  • Angular
  • Php
  • Laravel
  • Flutter
Readerstacks logo
Readerstacks
Create Custom Class or Custom Library in Laravel 11

Create Custom Class or Custom Library in Laravel 11

Aman Jain, July 6, 2024July 6, 2024

Custom classes and libraries in Laravel can streamline your application’s codebase by encapsulating common functionality and business logic. This tutorial guides you through creating and utilizing custom classes using Laravel’s powerful features. These classes can be used to encapsulate common functionality, business logic, or to abstract away complex operations. In this article i will show you to create a class and use it using the alias or directly from the namespace name.

Let’s begin the tutorial of custom helper functions step by step

Step 1 : Create a class file

First, let’s create a helper class file within the Laravel application. You can place it in the app folder directly or organize it under a new folder like Lib inside app. Here’s an example creating a file app/Lib/PaymentHelper.php:

<?php 
namespace \App\Lib;

class PaymentHelper{

public $key='test_key';

  function getConfig(){
    return $this->key;
  }

}

Step 2 : Create Routes

Next, define routes to access and test our custom class. You can do this directly in a route file or within a controller. Here are examples of both approaches

<?php

use Illuminate\Support\Facades\Route;
 
Route::get('/helper',function(){
   
   $Payment=new \App\Lib\PaymentHelper();
    return $Payment->getConfig();
}); 

Or in controller

<?php

use Illuminate\Support\Facades\Route;
use App\Http\Controllers\ArticleController;

 
Route::get('/helper',[ArticleController::class, 'test']); 

Create a controller in app\Http\Controllers\ArticleController and You can now use your custom class in your application by importing it and creating a new instance of it. For example, in a controller:

<?php
namespace App\Http\Controllers;
use Illuminate\Http\Request;
user App\Lib\PaymentHelper;

class ArticleController extends Controller
{
    public function test(Request $request)
    {
        $Payment=new PaymentHelper();
        return $Payment->getConfig();
    }
}
?>

In the same way we can use it in our view file.

Pro Tips:

To make your custom class globally accessible across the application, you can register it within Laravel’s AppServiceProvider:

<?php

namespace App\Providers;

use Illuminate\Support\ServiceProvider;
use App\MyCustomClass;

class AppServiceProvider extends ServiceProvider
{
    public function register()
    {
        $this->app->singleton('myCustomClass', function () {
            return new MyCustomClass();
        });
    }
}

You can now use your custom class or library class anywhere in your application by calling the global helper function app() and passing in the name of the class you registered. For example:

<?php

namespace App\Http\Controllers;

use Illuminate\Http\Request;

class MyController extends Controller
{
    public function index(Request $request)
    {
        $customClass = app('myCustomClass');

        // Use your custom class here
        $customClass->myCustomFunction();
    }
}

NOTE: This Singlton method will only create the object for once and will use the same object on every injection.
This concludes the tutorial on creating and using custom classes or libraries effectively within Laravel. By following these steps, you can enhance code organization and reuse across your Laravel applications.

Related

Php Laravel Laravel 11 classhelperlaravelphp

Post navigation

Previous post
Next post

Related Posts

Laravel 11 the transformative power of education in the digital age

The Transformative Power of Education in the Digital Age

August 5, 2025

In an era defined by rapid technological advancements, education stands as a beacon of hope and progress. As society transitions into a digital age, the landscape of learning is shifting profoundly. Education is no longer confined to the four walls of a classroom; instead, it has transcended geographical boundaries, allowing…

Read More

how to add multiple select in laravel eloquent ?

December 29, 2021February 22, 2024

Laravel eloquent builder has rich features to modify the query. In some cases we wanted to add multiple select in laravel and modify the select statement on basis of few conditions and wanted to add some select statement on condition. so in this article we will learn to add multiple…

Read More
Php How to Set and Get Cookies in Laravel

How to Set and Get Cookies in Laravel ?

July 25, 2022July 25, 2022

In this article we will learn to set and get cookies in laravel. Cookies are used to store the data in client computer, Cookie can hold tiny information in computer and can retrieve when required for same website. In laravel we can store and fetch cookies using laravel inbuilt methods…

Read More

Aman Jain
Aman Jain

With years of hands-on experience in the realm of web and mobile development, they have honed their skills in various technologies, including Laravel, PHP CodeIgniter, mobile app development, web app development, Flutter, React, JavaScript, Angular, Devops and so much more. Their proficiency extends to building robust REST APIs, AWS Code scaling, and optimization, ensuring that your applications run seamlessly on the cloud.

Categories

  • Angular
  • CSS
  • Dart
  • Devops
  • Flutter
  • HTML
  • Javascript
  • jQuery
  • Laravel
  • Laravel 10
  • Laravel 11
  • Laravel 9
  • Mysql
  • Php
  • Softwares
  • Ubuntu
  • Uncategorized

Archives

  • August 2025
  • July 2025
  • June 2025
  • May 2025
  • April 2025
  • October 2024
  • July 2024
  • February 2024
  • January 2024
  • December 2023
  • November 2023
  • October 2023
  • July 2023
  • March 2023
  • November 2022
  • October 2022
  • September 2022
  • August 2022
  • July 2022
  • June 2022
  • May 2022
  • April 2022
  • March 2022
  • February 2022
  • January 2022
  • December 2021
  • November 2021
  • October 2021
  • September 2021
  • August 2021
  • July 2021
  • June 2021

Recent Posts

  • The Transformative Power of Education in the Digital Age
  • Understanding High Vulnerabilities: A Closer Look at the Week of July 14, 2025
  • Exploring Fresh Resources for Web Designers and Developers
  • The Intersection of Security and Technology: Understanding Vulnerabilities
  • Mapping Together: The Vibrant Spirit of OpenStreetMap Japan
©2023 Readerstacks | Design and Developed by Readerstacks
Go to mobile version