TEMPS ÉCOULÉ PHP

jdalton42 Messages postés 200 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 19 août 2009 - 20 avril 2007 à 18:24
jdalton42 Messages postés 200 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 19 août 2009 - 22 avril 2007 à 22:11
Cette discussion concerne un article du site. Pour la consulter dans son contexte d'origine, cliquez sur le lien ci-dessous.

https://codes-sources.commentcamarche.net/source/42383-temps-ecoule-php

jdalton42 Messages postés 200 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 19 août 2009
22 avril 2007 à 22:11
je sais pas, mais c'est long en tout cas mdr
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
22 avril 2007 à 21:52
jdalton42, pourtant, ici, on en aurait tous besoin je penses :)

FHX, j'ai fais un bout de gestionnaire de plugins / utilisateurs en procedurale :) on en etait encore a php4, et j'etais jeune :)

si je refaisais ca, ou mon site, ou un framework, je ferais un shemat, une classe ExeptionLIBMACHIN extends Exeption, et plusieurs exeptions en heritant, une interface log, une classe logsql, logxml et logtxt en heritant. et une classe page, des classes d'affichage, qui gereraient des choses comme dans une apps java ou cpp :) mais avec gestion du cache, et sans les events... une classe plugin, une classe DB geree a la mode perl, des classes qui en heriteraient pour faire diverses moteurs (odbc, mysql, mysqli, fichiers, xml ...) une classe clientreseau, une irc, une smtp. Et la je commencerais a coder un site... le site prendrait ensuite 3000 lignes au lieu de 18 000, mais les classes dans un dossier a part feraient office de framework perso, et seraient deja beaucoup plus grosses, mais beaucoup plus lisibles / maintenables ect...

mais j'ai pas le temps, et coder ca, ca revient a coder un gros projet...
jdalton42 Messages postés 200 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 19 août 2009
22 avril 2007 à 21:24
fhx fais en plus court ^^ la taille de ton com ne me donne meme pas envie de le lire ^^
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
22 avril 2007 à 21:22
Ce n'est pas de l'utilité qu'il faut parler sur le débat objet/procédurial.
Ce sont 2 conceptions de programmation diamétralement opposées. L'objet repose sur une conception abstraite alors que le procédurial repose sur une conception concrète.

Une fonction sera toujours une fonction. Elle fait ce qu'on lui ordonne, et tant mieux... car je ne lui demande jamais plus que ce qui lui est nécéssaire.
Un objet, par contre, est modelable à loisir. Elle repose sur une architecture abstraite qui oblige le concepteur à voir plus loin dans sa programmation.
Un objet peut représenter plusieurs choses issues d'un même modèle. Le modèle (que l'on appèle aussi une classe) est un schéma du futur objet (que l'on appèle une instance de classe) dont les propriétés et les méthodes d'accès sont différentes selon l'élément instancié.

Il est clair qu'on ne fait pas de l'objet simplement pour dire "je fais de l'objet", bien que je suis moi aussi passé par la à mes débuts dans l'orientée objet :). J'ai tatonné longtemps avant d'arrivé au niveau où je suis, et je comprends que cela n'est pas facile à comprendre.


Tu dis qu'un objet n'est pas un joujou qu'on appèle qu'une seule fois. Dans certains cas si. Afin d'unifier les architectures, on utilise un modèle de base qui servira par la suite à d'autre objet à instance unique.
Je parle nottament des "factory" qui sont bien la pour montrer l'unification des interfaces I/O avec les objets environnants.

Ce que tu peux faire en objet, tu peux le faire avec des fonctions. C'est vrai. L'inverse est aussi vrai... quoi que... pas toujours.

Regarde certaines classes que j'ai faite, notamment la dernière avec l'utilisation de la reflection de classes. Je te mets au défi de refaire la même chose en procédurial. Tu y arriveras peut-être, mais à quel prix ? Et si je décide de changer un peu mes classes pour les adapter à mes projets toujours aussi nombreux, feras-tu toi aussi le nécessaire ? Je metterais sans doute quelques heures, voir quelques minutes pour un changement minimes sur mes classes, alors que tu mettras quelques jours à re-écrire les fonctions (même en utilisant du copier/coller).
Sur certains points, l'objet surpasse le procédurial. Mais comme tu l'as dis, il faut en avoir la nécessité absolue.

Je respecte le fait que tu n'ais, à l'inverse de moi, pas une conception objet sur la programmation web. Je le concois aisément car avant de connaitre l'objet j'utilisais comme tout le monde le procédurial, unique référence en PHP.


Cela reste une logique de programmation. Après tout, chacun son point de vue :) Si tu te sens plus à l'aise avec le procédurial, je ne peux qu'être content de ton choix. On va vers là où l'on se sent le mieux et on exploite ses capacités dans son domaine de prédilection au maximum (et je sais que sur de nombreux points tu me surpasses aisément).


Si j'ai choisi de répondre (longuement... :o) à ce post, c'est pour donner mon point de vue sur l'objet. Je ne prétends pas vouloir te faire changer d'avis car tu possèdes déja le tiens, mais pour ouvrir une autre voie à la programmation (web ou applicatif), une voie qui est généralement très largement sous-estimée à cause de sa lenteur d'exécution et sa compréhension assez délicate au premier abord.

Si, au moins, j'ai réussi à soulever quelques interrogations sur l'objet alors j'aurais tout gagner. Mon but est simplement d'exposer mon point de vue face à Coucou.

En tout cas, je souhaite témoigner du plus grand respect à l'égard de Coucou qui est l'un des plus grand codeur de PHPCS, et j'espère que d'autres en feront autant que moi même avec un point de vue différent du tiens.


J'espère que je n'ai pas été trop long ( même en codant je n'écris pas autant :p ) !

Je suis ouvert à toute question concernant l'objet... même celles qui fachent :)
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
22 avril 2007 à 18:55
FHX, je respecte ton point de vue vis a vis de l'objet, eux ne respectent pas le mien... Un objet, c'est pas un joujou que tu fais pour l'appeller une fois, c'est plus qu'une hashtable, et plus qu'une fonction, ca a une veritable place dans un programme... un objet en web, c'est souvent disons inutile...
FhX Messages postés 2350 Date d'inscription mercredi 13 octobre 2004 Statut Membre Dernière intervention 18 avril 2015 3
22 avril 2007 à 18:50
"lol je me suis fait kicker de phpfrance motif ignare tout ca parce-que j'ai trolle sur l'utilite de php5... "
T'as trollé en bien j'espère :D

Sinon moi aussi jm'y met :D :D :D
jdalton42 Messages postés 200 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 19 août 2009
22 avril 2007 à 17:36
j'ai mis 1 aussi ^^ j'aurai mis -10 si il y avait...
coucou747 Messages postés 12303 Date d'inscription mardi 10 février 2004 Statut Membre Dernière intervention 30 juillet 2012 44
22 avril 2007 à 17:26
#
# $heure1 = "$time1";
#
# echo ("$annee ans $jour jours $diff_heure heures et $diff_min minutes");

ect.... tu utilises floor sans savoir pourquoi... tes elseif sont debiles et lents... ect...

expert... lol je me suis fait kicker de phpfrance motif ignare tout ca parce-que j'ai trolle sur l'utilite de php5... en gros... j'imagine pas ce qu'ils te reservent si tu y vas toi...

au passage, j'ai mis 1 car la note 0 n'est pas proposee
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
22 avril 2007 à 00:09
Pas eu l'occasion d'essayer ton code, mais compte tenu de ma première remarque, il devrait être faux ... puisque jours, mois et années sont toujours égaux.
jdalton42 Messages postés 200 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 19 août 2009
21 avril 2007 à 17:58
je suis d'accord avec putch ta source est de niveau débutant, change stp merci ;)
cs_putch Messages postés 624 Date d'inscription mardi 6 mai 2003 Statut Membre Dernière intervention 14 décembre 2009 1
21 avril 2007 à 16:47
"j'ai enfin trouvé LE code" de niveau expert ...

qu'est ce qui est de niveau expert dans ce code ?
tolose Messages postés 1 Date d'inscription jeudi 9 décembre 2004 Statut Membre Dernière intervention 21 avril 2007
21 avril 2007 à 10:59
Si tu n'est pas connecté depuis pile deux ans, cela affichera 2 ans !

faut juste rajouter une ligne :

if ($annee> 1)
{
echo ("$annee ans $mois mois $jour jours $diff_heure heures et $diff_min minutes");
}
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
20 avril 2007 à 18:52
Si je ne me suis pas connecté depuis pile 2 ans ... Suis-je toujours en ligne ?

Tes enchaînement de elseif sont brouillons, et tu passeras forcément à côté de certains cas en faisant ainsi. Mieux vaut les imbriquer.
econs Messages postés 4030 Date d'inscription mardi 13 mai 2003 Statut Membre Dernière intervention 23 décembre 2008 24
20 avril 2007 à 18:39
Euh ... $jours, $mo et $annee3 sont toujours égaux (tous calculés de la même façon) ?


# $timestamp1 = mktime(0,0,0,$mois1,$jour1,$annee1);
# $timestamp2 = mktime(0,0,0,$mois2,$jour2,$annee2);
#
# $jours= floor ($timestamp2 - $timestamp1); //Affichage du nombre de jour : 27
# $mo= floor ($timestamp2 - $timestamp1);//Affichage du nombre de mois : 27
# $annee3 = floor ($timestamp2 - $timestamp1) ;
jdalton42 Messages postés 200 Date d'inscription samedi 25 décembre 2004 Statut Membre Dernière intervention 19 août 2009
20 avril 2007 à 18:24
c'est une blague? c'est un script hyper simple !

expert? niveau débutant ce script

modifie
Rejoignez-nous