PHP code example of aboaisheh / laravel-repository

1. Go to this page and download the library: Download aboaisheh/laravel-repository library. Choose the download type require.

2. Extract the ZIP file and open the index.php.

3. Add this code to the index.php.
    
        
<?php
require_once('vendor/autoload.php');

/* Start to develop here. Best regards https://php-download.com/ */

    

aboaisheh / laravel-repository example snippets




namespace App\Repositories;

use App\Models\User;
use Aboaisheh\LaravelRepository\Contracts\RepositoryContract;

class UserRepository implements RepositoryContract
{
    protected $user;

    public function __construct(User $user)
    {
        $this->user = $user;
    }

    public function all()
    {
        return $this->user->all();
    }

    public function find($id)
    {
        return $this->user->findOrFail($id);
    }

    public function create(array $data)
    {
        return $this->user->create($data);
    }

    public function update($id, array $data)
    {
        $record = $this->user->findOrFail($id);
        $record->update($data);
        return $record;
    }

    public function delete($id)
    {
        $record = $this->user->findOrFail($id);
        return $record->delete();
    }
}

namespace App\Http\Controllers;

use App\Repositories\UserRepository;

class UserController extends Controller
{
    protected $userRepository;

    public function __construct(UserRepository $userRepository)
    {
        $this->userRepository = $userRepository;
    }

    public function index()
    {
        return response()->json($this->userRepository->all());
    }

    public function show($id)
    {
        return response()->json($this->userRepository->find($id));
    }

    public function store(Request $request)
    {
        return response()->json($this->userRepository->create($request->all()));
    }

    public function update(Request $request, $id)
    {
        return response()->json($this->userRepository->update($id, $request->all()));
    }

    public function destroy($id)
    {
        return response()->json($this->userRepository->delete($id));
    }
}
bash
php artisan make:repository ModelName
bash
php artisan make:repository User
bash
php artisan make:repository User --service
bash
php artisan make:repository ModelName
bash
php artisan make:repository ModelName --service