Post by UniversZenPost by Bruno DesthuilliersPost by UniversZenSalut à tous !
- je débute en php mais je connais très bien le développement objet sous
Windows
Parce que la POO, c'est différent sous Windows ?-)
Les outils eux le sont souvent
Entre Windows et une autre plateforme ? Eventuellement, oui, mais je ne
vois pas le rapport.
Post by UniversZenet justement ma requête porte sur les outils
: c'était donc plus pour donner une indication sur les habitudes logicielles
que j'ai pu prendre ... ;-)
Je dois être fatigué, mais je persiste à ne pas comprendre. Tu dirais
que tu à l'habitude d'utiliser tel ou tel éditeur/IDE/etc, je
comprendrais, mais le rapport avec la POO m'échappe définitivement.
Enfin, passons...
Post by UniversZenPost by Bruno DesthuilliersPost by UniversZen- j'ai déjà fait plusieurs petits sites (pour tester) utilisant html /
javascript / css et récemment php / mysql (site très simple)
Mon problème : je n'ai pour l'instant utiliser ques des outils qui gèrent
parfaitement le html, parfaitement les css, parfaitement le php ... mais
aucun qui fasse tout en même temps !
Pas vraiment un IDE, mais tu peux regarder du côté de Scite, un éditeur de
code qui sait gérer plusieurs langages différents dans un même fichier
source. Tourne sous Unix (en tous cas sous GNU-Linux) et Windows.
Mon but n'est pas de tout gérer dans le même fichier source, bien au
contraire.
Ok, donc tu cherches un bon éditeur de code sous Windows, en bref.
Post by UniversZenPost by Bruno DesthuilliersPersonnellement, j'évite autant que possible de mélanger - les css sont
dans fichiers à part, le javascript itou, et pour le php/html, je sépare
la partie purement applicative (pur php - ou autre langage) de la partie
rendu (essentiellement du html avec le minimum de php - ou autre langage -
dedans). Pour ce type d'utilisation, Emacs me donne entière satisfaction,
mais ce n'est pas vraiment un outil Windows...
On est bien d'accord sur le principe : manque donc l'outil ! :-)
Bin, emacs tourne sous Windows, mais c'est un poil galère à installer,
et moyennement intégré. Et puis après, il faut apprendre à le configurer
et à s'en servir, et bien que ça en vaille la peine, ce n'est pas une
mince affaire.
Ne bossant pas sous Windows - ou alors très ponctuellement - je ne peux
guère te conseiller. Scite est pas mal mais un peu limité quand même. Il
semble que notepad++ (qui est basé sur le même composant - scintilla -
pour l'édition et la colorisation) soit plutôt pas mal - je vois de plus
en plus de développeurs sous Windows l'utiliser en tous cas.
Post by UniversZenorganisation des fichiers, appels php dans les parties html et surtout
comment écrire proprement les parties mixtes html/php pour pouvoir les
maintenir facilement ...
En évitant comme la peste de mettre la moindre logique applicative dedans.
Post by UniversZenCa peut vous paraître trivial mais n'oubliez pas
que je débute ! ;-)
Très schématiquement, c'est un MVC primitif. Tu a:
* le(s) modéle(s) : des fichiers de code pur PHP dans lesquels tu gère
l'accès aux données, la logique métier etc (nb: sous la forme qui te
convient - fonctions, classes... - tu n'es pas obligé de faire de l'OO).
* le(s) controleur(s): ce sont les fichier PHP effectivement appelés par
les requêtes. Leur rôle est de:
* analyser la requête
* appeler les opérations qui vont bien sur le(s) modèle(s)
* définir le contexte pour la vue
* appeler la vue et la servir
Les controleurs ne contiennent eux aussi que du code PHP.
* la (les) vue(s): essentiellement du HTML, le PHP ne servant que pour
l'inclusion dynamique, le formattage, les boucles etc.
En bref, dans les modèles et controleurs, PHP est utilisé comme un
langage de programmation, dans les vues il est utilisé comme un langage
de template.
Les CSS et javascripts sont de préférence dans des fichiers à part,
appelés depuis la vue. NB: il n'est que très rarement nécessaire
d'inclure du javascript directement dans le HTML, on peut parfaitement
connecter les gestionnaires d'évènement directement depuis le code
javascript.
Un exemple parfaitement stupide:
# modele.php
<?php
$_contents = Array(
"hello world",
"Answer is 42",
"foo, bar, quux"
);
function getContent($id=0) {
if ($id > count($_content)) {
$id = 0;
}
return $_content[$id];
}
function getTitle() { return "hello world"; }
?>
# controleur.php
<?php
include('modele.php');
$_id = isset($_GET['id']) ? int($_GET['id'] : 0;
$context = Array(
'content' => getContent($id),
'title' => getTitle()
);
include("header.php");
include("vue.php")
php include("footer.php");
?>
# vue.php
<h1><?php echo $context['title']; ?></h1>
<p>
<?php echo $context['content']; ?>
</p>
(je te fais grâce des header.php et footer.php)
Dans la pratique, ce sera généralement un poil plus compliqué, of
course. Mais ça donne une idée du principe.
HTH