Aller au contenu

Sujets conseillés

Posté

Bonjour

J'utilise une fonction qui m'envoie un mail avec chaque erreur qui s'est produite sur mon site. C'est ainsi que j'ai découvert que la fonction is_a() était "deprecated".

L'ennui est que ma fonction bloque l'exécution de la page dés qu'elle à trouvé une erreur et que cette erreur se trouve dans...GeSHi dans le fichier "css.php" à la ligne 230. Voici ces lignes:

 if (isset($this) && is_a($this, 'GeSHi')) {
$language_data['STYLES']['NUMBERS'][0] = $language_data['STYLES']['REGEXPS'][3];
}

Par quoi puis-je la remplacer sans "foutre en l'air" le fichier de GeSHi?

On m'a conseillé dans le manuel PHP d'utiliser "instanceof" mais comment faire?

Merci

Posté

Pour utiliser instanceof, il faut que tu tournes PHP5 ... c'est le cas ?

Il semble s'il s'agit de ton site en signature que tu tournes 5.2.3.

Tu peux aussi utiliser get_class()

Posté

Exemple :

if (isset($this) && $this instanceof 'GeSHi') {
$language_data['STYLES']['NUMBERS'][0] = $language_data['STYLES']['REGEXPS'][3];
}

http://www.manuelphp.com/php/function.is-a.php

**EDIT Administrateur (TheRec)** Merci d'utiliser les BB Codes adéquats pour présenter ton code. Plus d'informations en cliquant sur "Aide BB Code" en dessous de la liste d'émoticons lors de la rédaction d'un message.

Posté

Bonjour,

Es-tu sûr que mettre GeSHi entre simple quotes (') lorsque tu l'utilises avec instanceof est correcte ? Le manuel ne décrit pas cette syntaxe ainsi en tout cas, il suffit de mettre le nom de la classe (étant donné qu'elle doit respecter les règle s'appliquant aux variables cela paraît logique). :/

Posté

Excuses, j'ai fait vite, il n'y a effectivement pas de quotes. ;-)

Posté

Merci pour votre aide, le problème est réglé!!!

Pour ceux que ça intéresse, le code devient ceci:

if (isset($this) && ($this instanceof GeSHi)) {
$language_data['STYLES']['NUMBERS'][0] = $language_data['STYLES']['REGEXPS'][3];

Veuillez vous connecter pour commenter

Vous pourrez laisser un commentaire après vous êtes connecté.



Connectez-vous maintenant
×
×
  • Créer...