Donnez un look NES à votre site web
vendredi 22 janvier 2021 à 14:20Donner un style NES à un site ou une appli web ? Voilà une feuille de style toute prête...
► Commentaires
Site original : Warrior du Dimanche
Donner un style NES à un site ou une appli web ? Voilà une feuille de style toute prête...
J'ai beau essayer plein de jeux différents, rien n'y fait: ça ne vaut pas les elder scrolls à mes yeux.
Les autres jeux sont soit trop dirigistes, soit trop narratifs, soit mal foutus du point de vue ergonomique... je ne retrouve jamais le plaisir de jeu, l'immédiateté, la simplicité, la liberté de Skyrim, Oblivion ou Morrowind...
Bon, on ne m'enlèvera pas de la tête que c'est pas super intuitif, ni super simple, mais bon, je n'ai trouvé que ça qui fonctionne...
On pourrait croire que c'est simple, hein... ben j'ai pas trouvé, personnellement.
Mais à chaque fois, j'ai pas été foutu de récupérer les données côté PHP (bon, je me doute qu'il doit y avoir un pacson de trucs que j'ignore encore, hein...)
«et si je passais les données au format base64, je devrais pouvoir les récupérer facilement...» car je pratique couramment un optimisme ridicule au sujet duquel il m'arrive encore de sombrer dans la stupéfaction à grand fracas...
Dont acte: je recommence à farfouiller avec des fetch, des posts pis tout mais sans succès: les données décodées font une image invalide.
Je décide de procéder moins élégamment: je copie les données vers un formulaire caché que je poste en target blank pour pas perdre ma page de travail... Oui, je sais, c'est sale, c'est moche, c'est pas secure, j'en ai conscience, c'est pas la peine de m'enfoncer, j'ai déjà assez honte comme ça...
Je reçois bien de la base 64, je décode... Et l'image n'est toujours pas valide. Puis une recherche m'apprend qu'il faut virer l'en-tête base64 côté serveur avant de décoder pour que ça fonctionne...
Je teste et... ça marche.
SUPER INTUITIF MERCI
<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/> <link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/> <script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"> <script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});Oui, j'avais posté il y a super longtemps un billet sur des astuces pour les accents espagnols sous ubuntu/int ( https://www.warriordudimanche.net/article691/59b41f3ca6ec8 ) puis je me suis rendu compte que la méthode la plus simple (mais VRAIMENT plus simple) est de trouver une disposition de clavier adéquate...
Pour les accents espagnols, le meilleur clavier azerty est le clavier Occitan:
Je n'utilise plus jamais le clavier français.
<link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/style.css"/> <link rel="stylesheet" href="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.css"/> <script src="http://www.warriordudimanche.net/./plugins/Galart/assets/lightbox.js"> <script>[].forEach.call(document.querySelectorAll("[lightbox]"), function(el) { el.lightbox = new Lightbox(el);});Un excellent article, très simple d'accès. Résumé pour mémoire mais je vous conseille d'aller lire le tout tant c'est clair et bien documenté:
function moncul(string $str)
pour éviter de vérifier les paramètres puisqu'un type erroné provoquera une erreurfunction moncul(string $str): int
car en cas de retour d'un autre type, il y aura erreur. (pour les fonctions ne retournant rien, :void
)private int $mon_cul;
pour qu'une erreur se déclenche en cas d'initialisation d'un type erroné.final class monCul(){
pour éviter tout héritage, même fortuit. ... pour éviter les confusions false/0 etc
En utilisant l'opérateur ternaire condition ? valeur retournée si true : valeur retournée si false;
Pourquoi ? Parce que c'est plus court mais aussi parce qu'on peut placer la condition directement dans une assignation ou à la place d'un paramètre: $count += ($value === CONTROL_VALUE) ? 1 : 0;
Par contre, je trouve qu'on y perd BEAUCOUP en lisibilité et en organisation.
Pour analyser une chaîne selon un format (et à la place d'un explode plus lourd). C'est l'inverse de printf(). ( https://www.php.net/manual/fr/function.sscanf.php )
[$var1, $var2, $var3, $var4] = [$var4, $var3, $var2, $var1];
$intersection = array_intersect(...$bigArray);
au lieu de $intersection = array_intersect($bigArray[0], $bigArray[1], $bigArray[2]); // Etc.
Ça m'a rappelé un épisode de BigBang Theory dans lequel Sheldon est prisonnier d'une boucle dans son algorithme HowToMakeANewFriend... (c'est Howard qui l'en sort en implémentant un compteur comme condition de sortie).
$block++;
if ($block > 1000) {
break;
}
Je plussoie vigoureusement ce point particulier
Avant de se lancer dans un traitement de tableau en créant une fonction ou une méthode exprès, relisez la doc de toutes les fonctions commençant par Array_ ... histoire de ne pas réinventer la roue.
Pour manipuler un tableau, penser à utiliser array_map plutôt que foreach si c'est possible:
array_map('trim',$tableau)
array_map(array($instance, 'methode'), $tableau)