PHP code example of martinpham / laravel-type-generator
1. Go to this page and download the library: Download martinpham/laravel-type-generator 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/ */
martinpham / laravel-type-generator example snippets
'route_prefixes' => [
'uri:_api' => [
'output' => resource_path('api/openapi.json'),
'class' => 'MartinPham\TypeGenerator\Writers\OpenAPI\OpenAPI',
'options' => [
'openapi' => '3.0.2',
'title' => 'OpenAPI',
'version' => '1.0.0'
]
],
'controller:App\Http\Controllers\Web\\' => [
'output' => resource_path('js/types/inertia-routes.ts'),
'class' => 'MartinPham\TypeGenerator\Writers\Inertia\Inertia',
],
],
class PlaygroundApiController extends Controller
{
public function findUser(User $user): User
{
return $user;
}
}
/**
* @return Collection<int, User>
*/
public function allUsers(User $user): Collection
{
return User::all();
}
/**
*
* @return array{
* requestedAt: DateTime | null,
* users: User[],
* cars: Collection<int, Car>,
* carsWithPagination: LengthAwarePaginator<int, Car>,
* nestedObject: array{
* evenDeeper: array{
* message: string
* }
* }
* }
*/
public function manything(Address $address): array
{
return [];
}
/**
* @property UploadedFile $file
* @property string $nickname
* @property array{
* name: string,
* age: int
* } $person
*/
class GreetingRequest extends FormRequest
{
public function rules(): array
{
return [
'file' => ['file'],
];
}
}
/**
* Greet
*
* Generates a greeting message.
*
* @id greeting
* @param Request<array{
* user_id: int
* }> $request
* @param string $name The receiver's nickname.
* @return Message|null The greeting message
* @throws InvalidName Invalid name provided
* @throws \InvalidArgumentException Invalid args provided
*/
public function greeting(Request $request, $name): ?Message
{
// ...
}
bash
php artisan vendor:publish --tag="type-generator"
bash
php artisan types:generate