#20414

Note PHP, encore une optimisation à la con

Je suis en train de refaire des optimisations en tout genre dans un script.

L’une concerne un tableau associatif qui liste les #tags associés à mes posts.
Donc je récupère ça de la BDD, concatène tout, explode() et j’ai un tableau.
Je trie le tableau avec ksort(), puis compte les occurrences de chaque valeur dans le tableau (avec array_count_values), pour avoir un tableau associatif :

(
    #tag1 => nombre_d'occurences1,
    #tag2 => nombre_d'occurences1,
    …
)

Ça me prend 50-70 ms.
J’ai pu réduire ça à 30-50 ms très facilement

En fait, j’ai simplement inversé les étapes ksort() et array_count_values().

Avant :

$tableau = …
ksort($tableau);
$tableau = array_count_values($tableau);

Après :

$tableau = …
$tableau = array_count_values($tableau);
ksort($tableau);

Pourquoi c’est plus rapide ?
Parce qu’au début, le tableau contient tous les #tags, y compris les doublons : il y a 10 000 environ. Trier ça prend du temps.

Mais après le array_count_values(), le tableau est dédoublonné et ne compte que 400 entrées. Trier ça prend moins de temps.

Il suffit qu’il y ait 4 ou 5 optimisations comme ça et on gagne 200 ms sur la page. C’est bête hein, mais ça marche.

Je ne sais pas si on apprend ça à l’école (j’ai jamais eu de prog à l’école), mais une règle :

Sur les tableaux, faire le tri après les filtres.

(PS : oui, beaucoup de posts de prog() en ce moment. Pas désolé du tout par contre :p)

https://lehollandaisvolant.net/?mode=links&id=20210926181502

#20413

PHP: hrtime - Manual

— microtime() retourne un temps précis à la microseconde.
— hrtime() c’est à la nanoseconde (« high resolution time »).

C’est recommandé pour faire des tests de performances.

À noter que hrtime() ne retourne pas un timestamp plus précis, mais un instant « t » compté depuis une origine arbitraire donné par le système.
Le but est de mesurer des durées, pas de donner l’heure. On l’utilise donc deux fois et on calcule la différence, pour trouver le temps mis entre les deux (temps de faire une procédure PHP par exemple).

https://www.php.net/manual/fr/function.hrtime.php

#20411

Ils disent NON au pass sanitaire ! - Broute - CANAL+ - YouTube

Nous on n’est pas là pour convaincre les gens de ne pas se faire vacciner, hein. Bien au contraire. Pour continuer de manifester, défendre notre liberté et bénéficier de l’immunité collective tout en faisant aucun effort, il faut absolument que les autres aillent se faire vacciner !

Hahaha !

Tellement ça

https://www.youtube.com/watch?v=dyz3eicxXsw

#20410

What is Your Page Title on a Google Search Engine Results Page? | CSS-Tricks

Pour certains résultats Google, le titre des pages n’est pas le contenu de <title>, ni même le premier H1 de la page.

En fait, dans son exemple, le titre affiché par Google n’est pas présent dans le code source de la page.

https://css-tricks.com/what-is-your-page-title-on-a-google-search-engine-results-page/

#20409

franceinfo plus sur Twitter : "🚰 Chez McDonald’s, l'eau présentée comme "microfiltrée" est précisément vendue 2,50 euros les 40cl, soit plus de six euros le litre Comment expliquer un tel prix ? 📺 #franceinfo canal 27… https://t.co/s1IT6EPIm9"

2,40 € pour un verre (carton) d'eau soi-disant filtrée.

Déjà : tous les restaurants et cafés facturent l'eau prise en dehors d'un repas, ou au moins peuvent la facturer.

Quant à la loi qui dit que l'eau "ordinaire" prise au cours d'un repas serait incluse dans le prix du repas au même titre que le sel et le pain (arrêté du 8 juin 1967 relatif à l’affichage des prix dans les établissements servant des repas, ‎denrées ou boissons à consommer sur place), elle a été abrogée en 2015.
Donc même au cours d'un repas, on peut tout vous facturer (même si cette pratique n'est pas répandue).

Par contre, le restaurant doit afficher tous ses prix.
Si vous demandez de l'eau ordinaire (du robinet), en précisant bien "ordinaire", et qu'on vous sert effectivement de l'eau ordinaire (donc pas filtrée, ni de l'eau Évian ou autre), s'ils vous la facturent, son prix doit être affiché sur le tableau des prix. Si c'est pas le cas, ce produit ne peut pas être facturé et on peut vous le refuser.

Ensuite un truc que j'aimerais bien voir c'est leur allégation sur le "eau micro-filtrée". Ça veut dire quoi ? On te sert de l'eau distillée ? déminéralisée ?

On est au courant que l'eau "pure" n'est pas bonne pour la santé et est (autrement mais à peu près autant) aussi dangereuse que boire de l'eau de mer ?

Mais je vois bien le truc : leur pub est relativement vague de façon à ne pas avoir à respecter quelque norme que ce soit. En pratique, je suis à peu près certain qu'une analyse de leur eau "filtrée" n'aurait aucune différence avec l'eau de leur robinet (par exemple celui dans leur WC, vu qu'ils refuseront de servir de l'eau réellement du robinet. Sans compter qu'avec les gobelets et les pailles en carton comme c'est désormais le cas partout, le filtrage me semble particulièrement inutile.

Enfin : si vous voulez manger et boire correctement, je ne peux que vous conseiller d'aller ailleurs qu'au McDo, BK ou autre (mais ce n'est qu'un conseil évidemment)

https://www.twitter.com/franceinfoplus/status/1441670942984335364