begin process at 2012 05 31 06:08:41
  Trouver un code source :
 
dans
 
Accueil > Forum > 

PHP

 > 

Divers

 > 

Débutant(e)

 > 

Possibilités d'utilisation de la fonction include


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Possibilités d'utilisation de la fonction include

jeudi 17 avril 2008 à 16:57:02 | Possibilités d'utilisation de la fonction include

marmottek

Bonjour,
Je voudrais faire un petit site de critiques de BDs.
Je me suis dit qu'avec la fonction include, je pouvais faire mes critiques sur des docs html et les appeler dans ma page.
Peut-on utiliser la fonction include pour appeler tous les fichiers html d'un même répertoire ?
Peut-on générer un tri (exemple alphabétique du nom de fichier) ?
Peut-on générer des pages avec X fichiers par page ?
Dans le même esprit, est-ce possible de trier genre "tous les fichiers commencant par a" dans le répertoire X ? Cela demande-t-il de faire des pages avec des appels différents ? ou Il suffit de faire des liens genre monsite.com/news.php?news=a ou quelquechose dans le genre.

Je n'ai fait que du HTML simple pour l'instant mais le PHP semble avoir des fonctionnalités de folie.
Je vous remercie d'avance pour les réponses !
jeudi 17 avril 2008 à 17:13:55 | Re : Possibilités d'utilisation de la fonction include

coucou747

Administrateur CodeS-SourceS
salut

c'est assez difficile de te repondre comme ca...

include c'est une fonction qui ne fait qu'un truc : inclure le fichier passe en parametre, la ou include est appelle.

pour recuperer tout les fichiers d'un repertoire, tu peux faire un opendir, readdir, etc... (cf la doc sur php,net, t'y trouveras plein d'exemples d'utilisation de chaque fonction, c'est un site tres interessant.)

pour trier, faut placer tes fichiers dans un tableau (array) et les trier avec sort (cf php.net)

pour selectionner ceux qui commencent par a, tu peux faire un array_filter.

pour la pagination, en fait, il te faut faire une boucle for, t'as rien d'automatique pour ca.
jeudi 17 avril 2008 à 22:05:54 | Re : Possibilités d'utilisation de la fonction include

neigedhiver

Salut,

Pour lire le contenu d'un répertoire, on peut aussi utiliser un itérateur, c'est plus propre. Y'a même des sources qui en parlent sur phpcs... Sisi, j'en ai vu...
Ca permet même de trier dans l'ordre qu'on veut, de filtrer, tout ça... Des trucs de ouf...
Y'en a même qui prétendent qu'on peut paginer avec, c'est dire, hein...


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
jeudi 17 avril 2008 à 22:31:43 | Re : Possibilités d'utilisation de la fonction include

coucou747

Administrateur CodeS-SourceS
hum... c'est un long debat...

perso, je trouve ca porc, parce-que c'est contre les principes objets... Exemple : perso, j'avais besoin de faire un SourceFile qui recupere le langage, mimetype, nombre de lignes, nommbre de commentaires d'un fichier source. bah j'ai fait SourceFile extends FileSPL (ou un truc du genre), mais ensuite, mon directoryItterator ne pourra jamais me sortir des SourceFile...
jeudi 17 avril 2008 à 22:36:46 | Re : Possibilités d'utilisation de la fonction include

neigedhiver

Ah bon ?

Qu'est-ce que tu entends par "sortir des SourceFile" ?
Le mien, FxpDirectoryIterator, il m'envoit bien des FxpFileInfo...
Ou alors j'ai pas compris.

FileSPL => SplFileInfo ;)


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
jeudi 17 avril 2008 à 22:58:01 | Re : Possibilités d'utilisation de la fonction include

coucou747

Administrateur CodeS-SourceS
hum.... tu fais comment pour que le directoryitterator de la spl renvoie des elements d'une classe personalisee ?
jeudi 17 avril 2008 à 23:14:22 | Re : Possibilités d'utilisation de la fonction include

neigedhiver

C'est pas le DirectoryIterator de la SPL, justement... Mais une classe étendue. A partir de là, on fait ce qu'on veut, non ? Y'a aucune obligation légale de n'utiliser que DirectoryIterator natif... ;)


Neige

N'hésitez pas à lire la doc de PHP avant de poser des questions triviales...
samedi 19 avril 2008 à 11:12:49 | Re : Possibilités d'utilisation de la fonction include

malalam

Administrateur CodeS-SourceS
Hello,

moi non plus je n'ai pas compris ce que tu voulais dire, Coucou, tu peux détailler ?
Perso je fais gaffe avec SplFileObject parce que je me suis rendu compte que sur php5.2, il subsistait des bugs : l'itérateur est mal écrit, il vaut mieux le réécrire (ça a peut-être changé, je n'ai pas réessayé vuq ue j'ai réécrit le mien) : il saute parfois la 1ère ligne d'un fichier lors d'une itération...quoi qu'on fasse.
samedi 19 avril 2008 à 11:42:48 | Re : Possibilités d'utilisation de la fonction include

coucou747

Administrateur CodeS-SourceS
hum...

le directoryitterator cree des SplFileInfo, on ne peut pas lui specifier une Factory qui creerait les objets que l'on desire a partir de leur Path (pourtant c'est un exemple classique de Factory...)

pour moi ca parrait logique de faire au moins un FileFactory, soit on en fait un Singleton pour pouvoir l'appeller facilement de n'importe ou, soit en en fait plusieurs, passables en parametres, pour avoir une solution plus generale.

exemple simple : je veux pouvoir lister des fichiers samba, des fichiers dans un zip, des fichiers en ftp, etc... j'ai deux solutions, soit je fais un wrapper par protocol, et je fais un directoryItterator generaliste, soit je fais des directoryitterators selon le protocol, et un factory.
on peut trouver une troisieme solution, en s'inspirant des deux premieres :

* des wrappers pour gerer le protocol (premiere couche d'abstraction)
* un directoryitterator generaliste et un FileObj generaliste (seconde couche d'abstraction)
* des FileObj particuliers et DirectoryItterators particuliers, selon les protocols, types de fichiers, etc...
* une factory pour dire quelle classe instancier en fonction du path.
* un directoryMultiItterator qui obeirait a la factory.
* des filtres particuliers en fonction des protocols, types de fichiers, etc...

pourquoi faire ca ? parce-qu'on ne fait pas la meme chose en ftp, en local, sur un zip, etc... quand on a un objet de manipulation de dossier en ftp, on peut vouloir recuperer l'utilisateur courrant... dans un zip, non (et pour les fichiers, les possibilites, on en parle meme pas...)


Bref, ca c'est un modele que j'imagine comme ca, mais qui n'existe pas. En realite, on a des wrappers, et un directoryitterator generaliste, qui ne fait QUE des SplFileInfo...

J'avais essaye de faire sortir au DirectoryItterator un PersonalFile (une classe de ma production pour gerer des fichiers) mais ca fonctionnait pas...

apres, peut-etre ais-je mal lu la doc...
samedi 19 avril 2008 à 12:03:43 | Re : Possibilités d'utilisation de la fonction include

malalam

Administrateur CodeS-SourceS
Mais DirectoryIterator est dédié au filesystem. C'est un peu comme si tu reprochais readdir() de ne pas lire un répertoire ftp.
Et toutes les classes de la SPL peuvent être étendues, voire totalement réécrites très facilement. Utiliser un itérateur de type "directory" généraliste qui implémente un FileInfo différent en fonction du contexte est extrêmement simple avec la SPL.  C'est vrai, il n'en existe pas de base. Mais il y a par contre tous les outils pour créer un tel code.
Je ne comprends pas non plus quand tu dis que la SPL va à l'encontre de la notion objet. Moi je trouve que c'est tout le contraire : elle est justement très flexible et est très fortement orientée objet, toute son architecture est basée là-dessus, et elle possède un pouvoir d'abstraction qui n'existe nulle part ailleurs dans PHP.
Les exemples founries avec la SPL le prouvent d'ailleurs : ils sont appliquées à un peu tout et n'importe quoi, mais tous conservent la même base (Traversable, Iterator). Et aucune classe n'est finale. Et surtout, on a tous les éléments pour réécrire absolument ce que l'on veut.

1 2

Cette discussion est classée dans : fonction, fichiers, html, genre, include


Répondre à ce message

Sujets en rapport avec ce message

include en html ? [ par overbrave ] Bonjour, je voudrais savoir quel fonction html faut-il utiliser pour que cela est a meme utilité que la fonction include en php..Je m'explique, pour i Appel à fonction php en html [ par Ishizaki ] Bonjouuuur tout le monde ^^. Voilà, je voulais savoir si on pouvait appeler une fonction php dans une page html. Aussi, est-ce que l'on peut assigne Fonction include dans les Freenews ! [ par linkid ] Salut tout le monde !Voilà, j'ai installé les Freenews (php/MySQL) sur mon site et j'ai tout bien mis ! Mais j'ai quand même un problème !En effet, su Fonction include() et paramètres GET ? [ par killer19 ] Bonjour. J'aimerais savoir s'il y a un moyen d'appeler une page php en lui transmettant des paramètres GET, sans passer par un lien. Je m'explique : j fonction "\'" [ par magicsmacks ] Bonjour, Je suis en train de programmer un forum de disussion... Mais j'ai un petit problème : J'ai programmé la page de formulaire pour que l'utilis remplacer fonction include par autre chose ... [ par loulou1320 ] bonjour,voici mon petit problème:j'ai crée plusieurs pages avec le même bandeaun, et la même barre de navigation latérale droite. Seul la partie gauch include de fichier [ par Zebra1928 ] Bonjour à tousj'ai ce morceau de code que je voudrai corriger.comment je peux faire appel à ces fichiers: fichier_world.php et autre_fichier.php sans Un include en fonction du jour [ par rimbo ] Bonjour ! Je voudrais faire un include en fonction du jour. Voici ce que j'ai élaboré mais ça ne marche pas :( <?php include('http://nomdusite.com/r html_entity_decode() avant qu'existait-il ? [ par cacoun ] Salut à tous,Voici mon pb du jour.mon serveur est en php 4.2.2Or, je voulais utilser html_entity_decode(), mais cette fonction n'existe qu'à partir de fonction mail() format html et variables [ par Alpha911 ] Bonjour,j'ai fait un petit formulaire en php et a la fin en guise de confirmation un mail est envoyé à la personne avec la synthese de ce qu'il a tapp


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,562 sec (4)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales