Widget Alvinet Passing null to parameter deprecated

Réduire
X
 
  • Filtrer
  • Heure
  • Afficher
Tout effacer
nouveaux messages

  • [RÉGLÉ] Widget Alvinet Passing null to parameter deprecated

    Bonjour,
    Toujours pour le site J!3 migré en J!5.1, j'ai un souci d'alerte pour le widget Alvinet (flux RSS). J'ai contacté leur site mais toujours pas de réponse. Peut-être est-ce simple à corriger et pourrais-je le faire moi-même ?
    Donc, quand debug activé, en front j'ai 2 lignes d'erreur :
    Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /x/xx/xxx/modules/mod_alvinet/helper.php on line 35

    Deprecated: trim(): Passing null to parameter #1 ($string) of type string is deprecated in /x/xx/xxx/modules/mod_alvinet/helper.php on line 38

    La ligne 35 correspond à :
    Code:
    $akeyword     = trim( $params->get( 'akeyword' ) );
    et la ligne 38
    Code:
    $depuis      = trim( $params->get( 'depuis' ) );
    Les autres variables ne semblent pas poser problème.
    Merci d'avance pour un petit coup de pouce !​

  • #2
    Bonjour,

    J'ai eu l'occasion de corriger des erreurs de ce type en testant par un if sur params->get en utilisant is_null, parfois empty ou isset
    Code:
    if (isset($params->get( 'akeyword' ))) {
    $akeyword = trim( $params->get( 'akeyword' ) );
    }
    "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
    MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

    Commentaire


    • #3
      Hello RobertG

      Voici un autre exemple de double signe d'interrogation (cfr une autre discussion qu'on a eu).

      La ligne ci-dessous remplace les trois tiennes ci-dessus.

      Code:
       $akeyword = trim( $params->get( 'akeyword') ?? "") ;
      louisseize aime ceci.
      Christophe (cavo789)
      Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
      Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

      Commentaire


      • #4
        Merci Christophe !
        "Patience et longueur de temps font plus que force ni que rage..." (La Fontaine : Le Lion et le Rat) - "Il n'y a pas de problèmes; il n'y a que des solutions" (André Gide).
        MoovJla et LazyDbBackup sur www.joomxtensions.com - FaQ sur www.fontanil.info - Site pro : www.robertg-conseil.fr chez PHPNET, sites perso chez PlanetHoster + sites gérés chez PHPNET, PlanetHoster, Ionos et OVH

        Commentaire


        • #5
          Merci à tous les 2, vais tester cela et vous dirai le résultat

          Commentaire


          • #6
            Alors, résultat des courses : avec isset, cela ne marche pas (erreur, il faut utiliser null !==). J'ai essayé alors la solution de Christophe et plus d'erreur.
            Merci encore à tous les 2 !

            Commentaire


            • #7
              Hello

              La différence est que isset vérifie si la clef akeyword existe ou pas mais se moque de savoir si la valeur est null.

              Avec la syntaxe que j'ai proposé on fait deux tests en fait : celui de l'existence mais aussi sur la valeur. Si non présent ou si null alors on assigne une chaîne vide.

              Il y a un troisième avantage à ma syntaxe : on garanti que la variable $akeyword est initialisée ce qui n'est pas le cas du if puisque si on n'entre dans la condition, la variable n'est jamais définie.

              Et puis, une ligne, c'est plus lisible et plus simple à écrire.

              Et puis cela diminue la notion "complexité" puisqu'on supprime une branche (le if).

              Que du tout bon en fait :-)
              Christophe (cavo789)
              Mon blog, on y parle Docker, PHP, WSL, Markdown et plein d'autres choses : https://www.avonture.be
              Logiciel gratuit de scan antivirus : https://github.com/cavo789/aesecure_quickscan (plus de 45.000 virus détectés, 700.000 fichiers sur liste blanche)​

              Commentaire


              • #8
                Tout à fait ! je vais essayer de garder cela dans un coin de mon p'tit neurone, ça pourra servir !

                Commentaire

                Annonce

                Réduire
                Aucune annonce pour le moment.

                Partenaire de l'association

                Réduire

                Hébergeur Web PlanetHoster
                Travaille ...
                X