citations_bouddha

Passe plat https://buddha-api.com/ en FR

https://github.com/osd84/citations_bouddha

Science Score: 44.0%

This score indicates how likely this project is to be science-related based on various indicators:

  • CITATION.cff file
    Found CITATION.cff file
  • codemeta.json file
    Found codemeta.json file
  • .zenodo.json file
    Found .zenodo.json file
  • DOI references
  • Academic publication links
  • Academic email domains
  • Institutional organization owner
  • JOSS paper metadata
  • Scientific vocabulary similarity
    Low similarity (1.3%) to scientific vocabulary
Last synced: 7 months ago · JSON representation ·

Repository

Passe plat https://buddha-api.com/ en FR

Basic Info
  • Host: GitHub
  • Owner: osd84
  • License: mit
  • Language: PHP
  • Default Branch: main
  • Size: 1.95 KB
Statistics
  • Stars: 0
  • Watchers: 1
  • Forks: 0
  • Open Issues: 0
  • Releases: 0
Created over 1 year ago · Last pushed over 1 year ago
Metadata Files
Readme Citation

readme.md

citationsbouddhafr

Un exemple d'outil PHP clef en main pour générer des citations de Bouddha en français.

Il s'agit d'un "passe plat". Il récupère les citations de Bouddha sur le site buddha-api.com puis les traduits en français via Google Translate et les affichent.

Motivation

Proposer des outils "Upload & Play" sans dépendace et PHP From Scratch.
Pour permettre à chacun d'avoir des outils legers et simples.
Ce mouvement est inspiré par le mouvement "IndieWeb", "Small Web" et le "Brutalisme DEV" ou "BRUTAL DEV". Décomplexer et décomplexifier le développement web, et le rendre accessible et déployable à tous.

Installation

A l'ancienne

Sur un hebergement

Télécharger le fichier 'citations.php' et le placer dans un répertoire de votre serveur web.
Accéder à ce fichier via votre navigateur via http:///citations.php.

En ligne de commande

Ou vous pouvez aussi l'utiliser en ligne de commande

bash curl -s https://raw.githubusercontent.com/PetitCitron/citations_bouddha/main/citations.php | php ou php citations.php

Owner

  • Login: osd84
  • Kind: user
  • Location: France

OLD SCHOOL DEV

Citation (citations.php)

<?php
/**
 * Get a random quote from the Buddha API and translate it to French
 * BRUTALISM DEV by PetitCitron (https://github.com/PetitCitron/citations_bouddha)
 * @return string
 */
function get_buddha_quote($html=true) {
    // URL de l'API
    $url = "https://buddha-api.com/api/random";

    // Initialiser une session cURL
    $ch = curl_init();

    // Définir les options cURL
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    // Exécuter la requête cURL
    $response = curl_exec($ch);
    if (curl_errno($ch)) {
        curl_close($ch);
        return "Erreur lors de la récupération de la citation.";
    }

    // Fermer la session cURL
    curl_close($ch);

    // Décoder la réponse JSON
    $data = json_decode($response, true);
    if (json_last_error() !== JSON_ERROR_NONE) {
        return "Erreur lors du décodage de la réponse JSON.";
    }

    // Extraire la citation
    $quote = $data['text'] ?? 'Citation non disponible';
    $author = $data['byName'] ?? 'Auteur inconnu';

    $quote = str_replace(';', '', $quote);
    // Traduire la citation en français
    if ($html) {
        return "<h1>" . str_replace(';', '', translate_to_french("$quote")) . "</h1>" . " - $author";
    }
    return  translate_to_french("$quote") . " - $author";
}

function translate_to_french($text) {
    // URL de l'API de traduction (ici, j'utilise l'API de Google Translate)
    $url = "https://translate.googleapis.com/translate_a/single?client=gtx&sl=en&tl=fr&dt=t&q=" . urlencode($text);

    // Initialiser une session cURL
    $ch = curl_init();

    // Définir les options cURL
    curl_setopt($ch, CURLOPT_URL, $url);
    curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1);

    // Exécuter la requête cURL
    $response = curl_exec($ch);
    if (curl_errno($ch)) {
        curl_close($ch);
        return "Erreur lors de la traduction.";
    }

    // Fermer la session cURL
    curl_close($ch);

    // Décoder la réponse JSON
    $responseArray = json_decode($response, true);
    if (json_last_error() !== JSON_ERROR_NONE) {
        return "Erreur lors du décodage de la réponse JSON.";
    }

    // Extraire la traduction
    $translated_text = $responseArray[0][0][0] ?? 'Traduction non disponible';

    return $translated_text;
}
if (php_sapi_name() == 'cli') {
    // Code à exécuter si le script est lancé depuis la ligne de commande
    echo get_buddha_quote(false) . "\n";
} else {
    header('Content-Type: text/html; charset=utf-8');
    // Afficher la citation traduite si accédé via un navigateur
    echo '<html>';
    echo '<head><meta charset="utf-8"><meta lang="fr">';
    echo '<title>Citation Bouddha</title>';
    echo '</head>';
    echo '<body>';
    echo  get_buddha_quote();
    if (!isset($_GET['no_creds']) || $_GET['no_creds'] !== 'true') {
        echo "<br><br><small>src : https://buddha-api.com/ | traduction : Google Translate | by <a href='https://github.com/PetitCitron/citations_bouddha'>GitHub Repo</a></small>";
        echo "<br><small>enlever cette ligne ? <a href='citations.php?no_creds=true'>cliquez ici</a></small>";
    }
    echo '</body>';
    echo '</html>';
}
?>

GitHub Events

Total
Last Year