(php)ajouter des fonctions avec include

Résolu
Salut,

exemple, j'ai un script avec des fonctions func.inc.php :

<?php

function Hello()
{
echo "hello\n";
}
?>

un autre script à besoin de la fonction index.php :

<?php
require("func.inc.php");
Hello();
?>

le problème est que ça marche en locale (wamp5) mais sur mon hébergeur (php 4.4.9) la fonction Hello est "oubliée" en sortant de func.inc.php.

un problème de configuration php ?

merci de votre aide !!!

4 réponses

  1. tu a essayé de mettre ta fonction public??
    1. c'est une fonction pas une classe. elle devrait être visible partout. c'est un problème de php, mais je sais pas quelle réglage il faut faire.
  2. Bonjour

    Ton fichier inclus s'appelle-t-il bien func.inc.php, tout en minuscules ?
    Windows ne tient pas compte de la différence majuscules / minuscules dans les noms de fichiers. Si ton hébergeur utilise un OS (genre linux) qui différencie les deux, et s'il masque certaines erreurs (c'est fréquent) il est possible que le problème vienne de ce qu'il ne voie pas du tout ton func.inc.php.
    Pour t'en assurer, ajoute un echo "qq chose" dans func.inc.php, mais en dehors de la fonction.
    1. le fichier est bien chargé (j'utilise require et un echo le valide).

      ça marche très bien en locale mais sur mon hébergement ovh la fonction déclaré dans l'include n'est pas global.
  3. Re,

    N'y a-t-il rien entre les deux lignes :
    require("func.inc.php");
    Hello();
    Qui ferait arrêter le script ? Car en PHP, il n'y a rien à configurer pour qu'une fonction dans un fichier inclus soit globale, elle l'est forcément.
    1. c'était un problème de version sur le serveur d'ovh.

      j'ai rajouté SetEnv PHP_VER 5 à .htaccess et maintenant ça marche comme il faut.