reecriture d'une fonction php

reecriture d'une fonction php - PHP - Programmation

Marsh Posté le 28-07-2004 à 17:27:43    

hello,
 
j'aimerait utiliser le soft MapieRSS
et il comporte cette fonction:
 
array_change_key_case($attrs, CASE_LOWER); qui existe seulement depuis la version 4.2.0
 
moi j'ai la version 4.1.2. ( sourceforge.net )
 
j'ai donc reecrit cette fonction en enlevant le 2em params:

Code :
  1. function array_change_key_case($attrs){
  2.  $result=array();
  3.  foreach($attrs as $key=>$value)  {
  4.   $key_=strtolower($key);
  5.   $result["$key_"]=$value;
  6.  }
  7.  return $result;
  8. }
  9. function feed_start_element($p, $element, &$attrs) {
  10.  $el = $element = strtolower($element);
  11.  $attrs = array_change_key_case($attrs);<< 213
  12.  // check for a namespace, and split if found
  13.  $ns = false;
  14.  if ( strpos( $element, ':' ) ) {
  15.   list($ns, $el) = split( ':', $element, 2);
  16.  }


 
je me mange un:
 
Fatal error: Call to undefined function: array_change_key_case() in /home/groups/j/jc/jchatirc/htdocs/mag/rss_parse.inc on line 213
 
 
vous voyez d'ou ca peux venir?

Reply

Marsh Posté le 28-07-2004 à 17:27:43   

Reply

Marsh Posté le 28-07-2004 à 17:50:16    

La fonction array_change_key_case() est une fonction PHP qui map celle de ta lib.
Si la lib n'est pas assez récente, ça n'empèche pas la fonction PHP d'exister, et cette dernière te retourne une erreur.
Tu ne peux pas surcharger une fonction de PHP. Il faut que tu la nome autrement :/


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 28-07-2004 à 17:55:20    

Heu, j'ai rien dis, array_change_key_case() est une fonction native de PHP :D
 
Peut-être existe-t-elle en 4.1.2 mais pas implémentée.
 
Faudrait voir le source de php 4.1.2...


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Marsh Posté le 28-07-2004 à 17:59:41    

salut,
 
merci pour l'aide.
 
jl'ai donc renommer:
 

Code :
  1. function arrayChangeCase($attrs){
  2.  $result=array();
  3.  foreach($attrs as $key=>$value)  {
  4.   $key_=strtolower($key);
  5.   $result["$key_"]=$value;
  6.  }
  7.  return $result;
  8. }
  9. function feed_start_element($p, $element, &$attrs) {
  10.  $el = $element = strtolower($element);
  11.  $attrs = arrayChangeCase($attrs);


 
et c'est toujours la meme erreur.
note: tout se trouve dans le meme fichier :/

Reply

Marsh Posté le 28-07-2004 à 20:28:35    

Là je vois pas, chez moi ça marche :/


---------------
Laissez l'Etat dans les toilettes où vous l'avez trouvé.
Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed