PHP code example of haseebmirza / laravel-api-response
1. Go to this page and download the library: Download haseebmirza/laravel-api-response 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/ */
haseebmirza / laravel-api-response example snippets
use HaseebMirza\ApiResponse\ApiResponse;
class UserController extends Controller
{
public function index()
{
return ApiResponse::success(User::all(), 'Users retrieved');
}
public function store(StoreUserRequest $request)
{
$user = User::create($request->validated());
return ApiResponse::created($user);
}
public function show(User $user)
{
return ApiResponse::success($user);
}
public function destroy(User $user)
{
$user->delete();
return ApiResponse::noContent();
}
}
// With user data
$token = $user->createToken('api')->plainTextToken;
return ApiResponse::withToken($token, $user);
// Token only
return ApiResponse::withToken($token);
// Custom token type
return ApiResponse::withToken($apiKey, $user, 'API-Key');
// Token response with metadata and custom top-level fields
return ApiResponse::withToken($token, $user, 'Bearer', 'Authenticated successfully', [
'request_source' => 'mobile',
], [
'request_id' => 'req_abc123',
]);
use HaseebMirza\ApiResponse\Traits\ApiResponder;
class Controller extends BaseController
{
use ApiResponder;
}
class OrderController extends Controller
{
public function index()
{
$orders = Order::paginate(20);
return $this->paginatedResponse($orders, 'Orders retrieved');
}
public function store(StoreOrderRequest $request)
{
$order = Order::create($request->validated());
return $this->createdResponse($order);
}
public function show(Order $order)
{
return $this->successResponse($order);
}
public function update(UpdateOrderRequest $request, Order $order)
{
$order->update($request->validated());
return $this->successResponse($order, 'Order updated');
}
public function destroy(Order $order)
{
$order->delete();
return $this->noContentResponse();
}
}