php et langage objet

php et langage objet - PHP - Programmation

Marsh Posté le 19-06-2006 à 14:21:16    

Bonjour,
 
voila, je n'ai pour ainsi dire jamais fait d'objet et je m'y suis éssayé (et surement gamelé  :o).
J'ai fait des classes avec quelques composants de formulaire HTML :

Code :
  1. class MyForm
  2. {
  3.    var $Object = null;
  4.    function Add($object)
  5.    {
  6.       $this->Object[] = $object;
  7.    }
  8.    function Create($name = null, $action = null, $method = 0)
  9.    {
  10.       $tabMethod = array("post", "get" );
  11. echo "<form name=\"";
  12.       if (!is_null($name))
  13.          echo $name;
  14.       echo "\" id=\"";
  15.       if (!is_null($name))
  16.          echo $name;
  17.       echo "\" action=\"";
  18.       if (!is_null($action))
  19.          echo $action;
  20.       echo "\" method=\"";
  21.       echo $tabMethod[$method];
  22.       echo "\" />\n";
  23.       foreach($this->Object as $object)
  24.          $object->Create();
  25.       echo "</form>\n";
  26.    }
  27. }
  28. class MyEdit
  29. {
  30.    var $Name = null;
  31.    var $Value = null;
  32. function Create()
  33.    {
  34.       echo "<input type=\"text\" name=\"";
  35.       if (!is_null($this->Name))
  36.          echo $this->Name;
  37.       echo "\" id=\"";
  38.       if (!is_null($this->Name))
  39.          echo $this->Name;
  40.       echo "\" value=\"";
  41.       if (!is_null($this->Value))
  42.          echo $this->Value;
  43.       echo "\" /><br /><br />\n";
  44.    }
  45. }


 
Ensuite je construis mon formulaire de la sorte :

Code :
  1. $ed = new MyEdit;
  2. $ed->Name = "login";
  3. $ed->Value = "test";
  4. $form = new MyForm;
  5. $form->Add($ed);
  6. $form->Create("test", "toto.php" );


 
Voila, ca fonctionne, du moins ca m'affiche ce que je veux mais je suis sûr que c'est loin d'être parfait.
J'en viens aux questions :

  • Quelqu'un aurait un lien avec une bonne introduction du langage objet (je me suis inspiré d'un script)
  • Dans ma classe il n'y a pas de constructeur, c'est mal non  :D ?
  • Ne pourrais-je pas utiliser l'héritage entre MyForm et MyEdit ? Si oui comment.
  • Dernier point, je voudrais aussi utiliser l'héritage pour faire des MyEditText et MyEditPassword par exemple, qui n'ont que le type qui change


Voila, je me suis permis de poster car je n'ai fait qu'extrapoler les trucs que j'ai lu et il doit y avoir de vilaine chose.
 
Merci d'avoir tout lu.

Reply

Marsh Posté le 19-06-2006 à 14:21:16   

Reply

Marsh Posté le 19-06-2006 à 15:15:35    

drapal :D
 
surtout :"Quelqu'un aurait un lien avec une bonne introduction du langage objet (je me suis inspiré d'un script)"
 
la doc est toote poorÿe :o
 

Reply

Marsh Posté le 19-06-2006 à 15:32:55    

$man a écrit :


  • Ne pourrais-je pas utiliser l'héritage entre MyForm et MyEdit ? Si oui comment.



extends
http://uk2.php.net/manual/en/keyword.extends.php
 
mais je vois pas pourquoi faire de l'heritage la... un formulaire ce n'est pas un champ d'edition


---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 20-06-2006 à 06:03:05    

 

les sources existent en francais et elles sont toujours aussi confuses :/
j ai l impression qu elles s adressent a des gens qui connaissent deja la poo
http://fr.php.net/manual/fr/language.oop5.php
http://fr.php.net/manual/fr/keyword.extends.php
c est le bordel il n y a AUCUNE structure a leur doc
meme maintenant que je comprends un peu mieux le concept objet sous php je trouve leur doc complètement inutile

 

peut etre que je ne suis pas doué ce qui ne m etonnerait pas mais ce qui est sur c est que ce n est pas grace a la doc php que j ai reussi a finir mes classes :/

Reply

Marsh Posté le 20-06-2006 à 10:28:13    

mIRROR a écrit :

les sources existent en francais et elles sont toujours aussi confuses :/
j ai l impression qu elles s adressent a des gens qui connaissent deja la poo


oui

mIRROR a écrit :


c est le bordel il n y a AUCUNE structure a leur doc


je ne trouve pas, il y a un jolie sommaire et tout qui va bien
C'est l'une des rares doc ou je ne me bas pas deux heures pour trouver une fonction
 

mIRROR a écrit :


peut etre que je ne suis pas doué ce qui ne m etonnerait pas mais ce qui est sur c est que ce n est pas grace a la doc php que j ai reussi a finir mes classes :/


Bah si, elle va t'aider a te fournir la syntaxe :D mais elle va pas te dire comment les concevoirs ca, c'est sur
Note : dans Thinking In Java et/ou Thinking in C++ il doit y avoir une petite partie sur la POO
Ces livres sont dispos gratuitement sur Internet (et Thinking In java existe meme en francais...)


Message édité par zapan666 le 20-06-2006 à 10:34:03

---------------
my flick r - Just Tab it !
Reply

Marsh Posté le 20-06-2006 à 17:20:12    

ouais la syntaxe c est tout
je veux dire c est pas tres pedagogique c est juste une liste de "fonctions" brute
thinking in java est pas mal mais malheureusement  c etait deja trop tard quand je suis tombé dessus :D
y a un tuto sur phpdebutant pas mal
http://www.phpdebutant.org/article42.php
 
c est bien pour commencer
et a defaut de trouver de la doc plus pointue je viens de commander un bouquin
 
mais bon j ai écumé le net a la recherche d infos et j ai rien trouvé  
bref difficile de s initier a l objet quand on decouvre avec php :cry:

Reply

Marsh Posté le 20-06-2006 à 17:25:49    

Bon, je ne l'ai pas lu en entier, mais il me semble pas trop mal pour débuter :  
http://www.siteduzero.com/tuto-3-1 [...] n-php.html


---------------
Je donne souvent l'air d'être ailleurs, mais en faite, je ne suis nulle part...
Reply

Sujets relatifs:

Leave a Replay

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