Skip to content

Instantly share code, notes, and snippets.

View ld-web's full-sized avatar

ld-web

View GitHub Profile

Atelier API Token

  • Dans votre base de données training_db, ajoutez les colonnes suivantes dans la table users :

    • password VARCHAR(255)
    • api_token VARCHAR(255)
  • Créez une page HTML d'inscription à votre service d'API, contenant uniquement un formulaire avec les champs suivants :

    • email
    • Mot de passe
  • Confirmation du mot de passe

@ld-web
ld-web / memo-sf.md
Created April 9, 2025 08:32
Mémo SF

Commandes Symfony

Créer un projet

Utiliser l'outil Symfony CLI :

symfony new project_name --version=6.4 --webapp
parameters:
#...
app.api_gmaps_base_url: 'https://maps.googleapis.com/maps/api'
services:
#...
App\Geocoding\GoogleMapsGeocoding:
arguments:
$baseUrl: '%app.api_gmaps_base_url%'
$apiKey: '%env(GOOGLE_MAPS_API_KEY)%'
parameters:
#...
services:
#...
App\Geocoding\IGeocoding: '@App\Geocoding\OsmGeocoding'
<?php
// File : src/Controller/DestinationController.php
//...
use App\Geocoding\IGeocoding;
class DestinationController extends AbstractController
{
//...
<?php
// File : src/Geocoding/OsmGeocoding.php
//...
class OsmGeocoding implements IGeocoding
{
public function getLatLng(string $location): ?LatLng
{
//...
}
<?php
// File : src/Geocoding/IGeocoding.php
namespace App\Geocoding;
use App\Entity\LatLng;
interface IGeocoding
{
public function getLatLng(string $location): ?LatLng;
<?php
namespace App\Geocoding;
use App\Entity\LatLng;
use Symfony\Contracts\HttpClient\HttpClientInterface;
class OsmGeocoding
{
private $client;
<?php
// File : src/Geocoding/OsmGeocoding.php
class OsmGeocoding
{
//...
public function geocode(string $location): ?LatLng
{
$response = $this->client->request(
'GET',
parameters:
app.api_osm_base_url: 'https://nominatim.openstreetmap.org'
services:
#...
# add more service definitions when explicit configuration is needed
# please note that last definitions always *replace* previous ones
App\Geocoding\OsmGeocoding:
arguments: