1 pièce(s) jointe(s)
Simple problème de syntaxe ==> PHP5
Bonjour,
J'ai un bête probleme de syntaxe que je parviens pas à résoudre, cela passe en "compilation" mais génère quand mêrme un message d'erreur et à l'exécution si je décommente le user_error qui précéde (prévu pour débugger..), cela crashe....
Voici les messages d'erreur (avant avoir décommenté)
Code:
1 2 3
|
[26-Apr-2010 07:34:43] PHP Notice: Undefined variable: value in F:\WebSites\jecrapahute\class\vector.php on line 66
[26-Apr-2010 07:34:43] PHP Notice: Undefined variable: value in F:\WebSites\jecrapahute\class\vector.php on line 66 |
Après.....
Code:
1 2
| [26-Apr-2010 07:38:00] PHP Notice: Member - Constructor OK in F:\WebSites\jecrapahute\class\member.php on line 16
[26-Apr-2010 07:38:00] PHP Catchable fatal error: Object of class Member could not be converted to string in F:\WebSites\jecrapahute\class\vector.php on line 65 |
La classe est toute bête, les lignes 65-66 sont en gras....
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74
| <?php
// ================================================================================================================================ //
// Class VECTOR[Final class] //
// ================================================================================================================================ //
require_once $_SERVER['DOCUMENT_ROOT'] . "/config/config.php";
/*
class QueryIterator extends Iterator
{ private $result, $connection, $data, $key = 0, $valid ;
function __construct()
{ ; }
function query($query)
{ ; }
function rewind()
{ ; }
function current()
{ return($this->data) ; }
function data()
{ return($this->data) ; }
function next()
{ ; }
function valid()
{ return($this->valid) ; }
}
Extends QueryIterator
*/
class Vector
{ private $debug ;
private $properties = array() ;
function __construct( $debug )
{ $this->__set(DEBUG, $debug) ;
user_error("Instantiation VECTOR[" . $debug . "]" , E_USER_NOTICE) ;
// print_r($this->properties) ;
}
function __destruct()
{ ; }
// =============================================================================================================================== //
function __array_get($array, $property)
{ return( (isset($this->properties[$array][$property])) ? $this->properties[$array][$property] : NULL ) ; }
function __array_set($array, $property, $value)
{ $this->properties[$array][$property] = $value ; }
function __get($property)
{// user_error("__get used[".$property."]" , E_USER_NOTICE) ;
return( (isset($this->properties[$property])) ? $this->properties[$property] : NULL ) ;
}
function __set($property, $value)
{ user_error("__set used[".$property."][".$value."]" , E_USER_NOTICE) ; <== 65
$this->properties[$property] = $value ; <== 66
}
// =============================================================================================================================== //
function debug()
{ return($this->__get(DEBUG) ) ; }
// =============================================================================================================================== //
}
?> |
Si en 66, je remplace value par valeur, "val", "l" ou n'importe quoi, cela ne change pas, je pensais au départ que value pouvait être un mot réservé en PHP....
Mais si vous observez bien, j'ai la même syntaxe quelques lignes + haut sans avoir cette erreur.....
L'include "config.php" est en attachement... mais ce sont juste des "define"....
Mystère...
Un pastis pour celui qui gagne.... :ccool:
Esteban