PHP 5 : ERREUR : Cannot re-assign $this - PHP - Programmation
Marsh Posté le 29-06-2005 à 15:26:00
Moi j'en sais rien (je connais pas encore assez PHP5), mais par simple lecture de l'erreur je devine qu'il n'est pas possible de modifier $this en PHP5, car effectivement, c'est très très crade.
Marsh Posté le 29-06-2005 à 15:27:19
$this represente l'objet?
comment faire pour contourner le pb?
merci
Marsh Posté le 29-06-2005 à 16:02:41
Chelou ta fonction copy Vaudrait plutôt mieux retourner un objet copié :
$zeCopy =& $object->copy(); |
Marsh Posté le 12-09-2005 à 11:22:09
Quelqu'un a déjà fait la modification de cette classe afin de la faire fonctionner avec php5 ?
Marsh Posté le 12-09-2005 à 11:28:20
Faut faire comme dit Florent .. $this est une variable final , impossible de la modifier
Marsh Posté le 12-09-2005 à 11:41:07
Oui, mais je n'ai pas épluché tout le code histoire de voir dans quel contexte il utilise tout ça.
Ça me parait bancale de modifier du code comme ça sans connaitre les inscidences.
Il faut que je choisisse entre deux solutions pour le développement d'un produit. Entre php5 et la classe Spreadsheet_Excel_Writer et php4.2 et cette classe là.
Je ne sais pas ce qui est le mieux en terme de charge sur la machine etc.. Je préfèrerai éviter de perdre du temps à patcher si je sais déjà que c'est peine perdue.
Marsh Posté le 12-09-2005 à 11:44:49
Probablement la version procedurale (probablement 4.2) est plus rapide ... maintenant elle est difficilement maintenable donc elle ne sera probablement plus mise a jour ... donc tu ne pourra pas beneficier des nouvelles technologies / ameliorations de libs
Marsh Posté le 12-09-2005 à 12:32:42
Je vais passer en php5, tant pis pour ce truc. C'est pas une solution durable de développer en php4.2.
Merci
Marsh Posté le 12-09-2005 à 22:21:36
J'ai eu ce léger problème en voulant faire tourner un site provisoirement sous php5. J'avais compris que c'était un bug des première version de php5. Je pensais que c'était corrigé maintenant.
Parce que c'est pas du tout "crade". L'un des rare pattern java que je connais, le pattern state je crois, utilise la reassignation de this.
Marsh Posté le 13-09-2005 à 08:42:29
Honnetement je vois pas a quoi sert la reassignation du this ... d'ailleur je serais meme surpris que ca marche en Java..
Marsh Posté le 13-09-2005 à 09:30:00
réassigner du this???
Dire que je pensais que le goto était le sommum de la mauvaise programmation...
Franchement, c'est la premiére fois que j'entends parler d'un tel truc.
Marsh Posté le 13-09-2005 à 09:40:00
Je viens de faire le test Le compilo à l'air de trouver que c'est une veritable hérésie ...Brave compilateur ..
Et non, le summum de la mauvaise programmation c'est les trucs du genre {$$mavar}.. quand je commance a voir des variables dynamiques je saute direct par la fenetre... c'est tellement le foutoir que ça vaut meme pas la peine de continuer a lire le script
Marsh Posté le 13-09-2005 à 09:44:12
esox_ch a écrit : Je viens de faire le test Le compilo à l'air de trouver que c'est une veritable hérésie ...Brave compilateur .. |
C'est vrai que c'est pas trés propre comme truc ça.
Alors si on le couple à des exit, break, goto et autres programmation spaguetis.
Marsh Posté le 13-09-2005 à 09:54:51
Sans oublier des joli eval() et un register_global on au passage pour assaisonner le tout
Marsh Posté le 29-06-2005 à 15:22:27
Bonjour,
J'ai mis a jour mon serveur en passant de PHP 4.3.1 à PHP 5.01. Mais maintenant les scripts de 'php_writeexcel'(permet de créer un fichier excel) indique une erreur : Cannot re-assign $this in /usr/nekoware/apache2/www/lib/excel/php_writeexcel0.2.2/class.writeexcel_format.inc.php on line 122
Voici la partie que se plante :
function copy($other) { //ligne 120
$xf = $this->_xf_index; // Backup XF index //ligne 121
$this = $other; // Copy properties // ligne 122
$this->_xf_index = $xf; // Restore XF index // ligne 123
}
Quel est la difference netre php 4 et php 5?
merci d'avance