web-dev-qa-db-fra.com

Erreur fatale: appel de la fonction non définie mb_substr ()

Je voulais connaître votre opinion sur cette préoccupation que je suis en train de vivre… .. Il s'avère que:

 <?php
$disc_t=$name; 
  if(strlen($disc_t)<=15)
  {
   $name_now=mb_substr( strip_tags($disc_t), 0, 10 ).'';
  }
  else
  {
   $name_now=mb_substr( strip_tags($disc_t), 0, 10).'...';
  }
?>

me donne en quelque sorte une erreur sur le site, l'erreur indique:

Fatal error: Call to undefined function mb_substr() in /home/(website)/public_html/index.php on line 308

Je ne comprends pas très bien ce qu'ils entendent par mb_substr. S'agit-il d'une erreur de version PHP? J'utilise actuellement PHP 5.3.19

13
Blahwhore

Jetez ceci dans un terminal:

php -m | grep mb

Si mbstring apparaît, cela devrait fonctionner.

14
Sverri M. Olsen

mb_substr() est une version multibyte-safe de substr() , ce qui signifie qu'elle fonctionne avec caractères par opposition à bytes. Cela se remarque surtout dans UTF-8, où de nombreux caractères sont représentés par deux octets ou plus.

Selon les instructions d'installation } _, mbstring n'est pas une extension intégrée. Vous devez l'activer en disposant des fichiers appropriés et en configurant PHP correctement. Certaines informations peuvent être trouvées dans le lien fourni, votre hébergeur devrait pouvoir vous aider avec le reste.

Pour Linux, installez en utilisant

Sudo apt-get install php7.0-mbstring

18
Niet the Dark Absol

Si vous avez un accès root, vous pouvez le configurer à l'aide de WHM Panel ou de ligne de commande. Je vous ferai savoir comment vous pouvez le faire en utilisant le panneau WHM.
1. Connectez-vous à votre WHM avec l'utilisateur racine
2. Allez à Easyapache
3. Aller à la configuration précédemment enregistrée 
4. Cliquez sur Démarrer le Customizing en fonction du profil.
5. Ne changez pas Apache et la version php, cliquez simplement sur suivant.
6. Cliquez sur la liste des options exhaustives au bas de la configuration php
7. Cochez la case près de l'option MBString
8. Enregistrer et construire
9. Ne fermez pas la fenêtre de votre navigateur si cela prend un certain temps. Sois patient.
Vous avez terminé!!!

1
Pt. Raman Sharma

L'erreur vous indique que vous essayez d'utiliser une fonction nommée mb_substr qui n'existe pas. 

Vous pouvez peut-être obtenir le même résultat en utilisant la fonction sous http://php.net/manual/en/function.substr.php à la place. substr (strip_tags ($ disc_t), 0, 10) renverra les dix premiers caractères du résultat de strip_tags ($ disc_t). 

0
root