Categories > TinyButStrong general (FR) >

Problème Php 4.1.1 et Array

The forum is closed. Please use Stack Overflow for submitting new questions. Use tags: tinybutstrong , opentbs
By: richard
Date: 2005-12-16
Time: 12:41

Problème Php 4.1.1 et Array

Quand j'ai installé php 4.1.1 sur mon serveur dédié, j'ai eu le problème évoqué dans le thread :
http://www.tinybutstrong.com/forum.php?msg_id=3883
Ne pouvant revenir à la version précédente de php (4.3.10), j'ai fait le test suivant :
<?php
include_once ('../include/tbs_class.php');
$tableau = array("b1","b2","b3","b4");

foreach($histo as $key=>$val)
    {
    print "valeur = $val<br />";
    }
$TBS = new clsTinyButStrong ;
$TBS->LoadTemplate('test_tableau.html') ;
$TBS->MergeBlock('histo','array','histo') ;
$TBS->Show() ;
?>

<br /><br />
<tt>
<input type="radio" name="listehistoa" value="[histo.val;block=tt]" border="0" onfocus="clic_histoa([histo.key]);"> [histo.val]
</tt>
<br /><br />

Résultat :
Le Print m'affiche bien les 4 valeurs différentes.
Le template TBS m'affiche 4 fois la 1re valeur.
J'en tire la conclusion que c'est un problème TBS et non PHP 4.4.1.
J'ai raison ou pas ?
By: Skrol29
Date: 2005-12-16
Time: 14:41

Re: Problème Php 4.1.1 et Array

Bonjour Richard,

Ton exemple ne reproduit pas le bug en question. Le bug agit sur une variable tableau lorsque (1) cette variable est assignée par référence à une autre variable, et (2) on utilise les fonctions key() ou current() sur ce tableau.

Voici un script qui le met en évidence :
$ar = array('un','deux','trois');
$ar2 =& $ar;

reset($ar);
$key = key($ar);
echo " key={".$key."}, val={".$ar[$key]."} <br>";

next($ar);
$key = key($ar);
echo " key={".$key."}, val={".$ar[$key]."} <br>";

Résultat attendu :
key={0}, val={un}
key={1}, val={deux}

Résultat avec PHP 4.1.1 :
key={0}, val={un}
key={0}, val={un}
By: mimigyaru
Date: 2005-12-22
Time: 17:02

Re: Problème Php 4.1.1 et Array

ça m'intraisserait de savoir comme on regle ce probleme car moi je doit avoir le même probleme avec les version 4.4.1

Comment on fait pour que ça s'arrenge ?
By: Skrol29
Date: 2005-12-29
Time: 00:27

Re: Problème Php 4.1.1 et Array

Hum bon... la toute dernière version de TBS mainteant dispo au téléchargement intègre un patch pour ce problème.