1. Home
  2. /
  3. Laravel
  4. /
  5. Simple Counter App

Simple Counter App - Laravel Typing CST Test

Loading…

Simple Counter App — Laravel Code

Demonstrates a simple Laravel controller and routes for a counter using session for state persistence.

<?php

// routes/web.php
use IlluminateSupportFacadesRoute;
use AppHttpControllers\CounterController;

Route::get('/counter', [CounterController::class, 'show']);
Route::post('/counter/increment', [CounterController::class, 'increment']);
Route::post('/counter/decrement', [CounterController::class, 'decrement']);
Route::post('/counter/reset', [CounterController::class, 'reset']);

// app/Http/Controllers/CounterController.php
namespace AppHttpControllers;
use IlluminateHttpRequest;

class CounterController extends Controller {
	public function show(Request $request) {
		$count = $request->session()->get('count', 0);
		return view('counter', ['count' => $count]);
	}

	public function increment(Request $request) {
		$count = $request->session()->get('count', 0) + 1;
		$request->session()->put('count', $count);
		return redirect('/counter');
	}

	public function decrement(Request $request) {
		$count = $request->session()->get('count', 0) - 1;
		$request->session()->put('count', $count);
		return redirect('/counter');
	}

	public function reset(Request $request) {
		$request->session()->put('count', 0);
		return redirect('/counter');
	}
}

// resources/views/counter.blade.php
<!DOCTYPE html>
<html>
<head><title>Laravel Counter</title></head>
<body>
	<h2>Counter: {{ $count }}</h2>
	<form method='POST' action='/counter/increment'>@csrf<button type='submit'>+</button></form>
	<form method='POST' action='/counter/decrement'>@csrf<button type='submit'>-</button></form>
	<form method='POST' action='/counter/reset'>@csrf<button type='submit'>Reset</button></form>
</body>
</html>

Laravel Language Guide

Laravel is an open-source PHP web framework designed for building modern, scalable, and maintainable web applications with expressive syntax, following MVC architecture and emphasizing developer productivity.

Primary Use Cases

  • ▸Building modern web applications
  • ▸Creating RESTful APIs
  • ▸Developing SaaS platforms
  • ▸Implementing authentication and authorization systems
  • ▸Rapid prototyping and MVP development

Notable Features

  • ▸Eloquent ORM for database abstraction
  • ▸Blade templating engine
  • ▸Routing and middleware support
  • ▸Artisan CLI for automation tasks
  • ▸Built-in authentication, authorization, and security features

Origin & Creator

Created by Taylor Otwell in 2011 and maintained by the Laravel community.

Industrial Note

Laravel is widely used in small-to-large web applications, SaaS platforms, and API-driven systems where rapid development and maintainable code are essential.

Practice Other Languages

CReactPythonC++RustTypeScriptKotlinPHPJavaC#RubyMqlCqlN1qlCypher