Aller au contenu

Quelques questions ;-) sur le PHP


vodnok

Messages recommandés

Bonjour,

Je voudrais savoir comment peut-on faire en php pour plannifier l'execution d'un script php. (A t elle heure ou toute les X minutes)

(Je voudrais une solution en php)

Dans la même lignée, comment peut-on bloquer l'éxécution d'un script. (Attente passive)

Toujours dans le même domaine, comment peut-on à paritr d'un scirpt, lancer un script en "background" tout en continuant l'execution du script parent. (celui-ci ne devant pas attendre la fin d'execution du fils, enfin je crois que vous aviez compris))

Et la question bonus :D , malgré l'abscence de pointeur, est il possible d'utiliser quick sort en php?

Comment faire un singleton en PHP? Singleton est une classe qui ne peut etre instancée qu'une seul fois avec des variable en static. Je n'ai jamas utilisé les classes en php c'est pour cela que je demande.

Merci,

ps: pas obligé de répondre à tout. Mais je me suis toujours possé ces questions alors je profite du moment pour demander.

Lien vers le commentaire
Partager sur d’autres sites

Hello

D'après ce que je sais, il n'y a pas de fonction explicite quicksort dans PHP. T'as des fonctions de tri style usort, uasort etc... mais pas de quicksort.

Sinon tu peux trouver facilement sur le net des gars qui ont codé des classes PHP qui implémentent le Quicksort, mais plus souvent dans un but pédagogique...

Sinon +1 Theocrite pour les privilèges administrateurs pour la planification de script - a la base t'as un temps d'execution max pour ton script et pour planifier une exécution de script, je ne vois que l'ajout d'une ligne dans la crontab...

Pour le reste, je ne vais rien dire parce que je suis loin d'avoir le niveau pour :francais: !

Lien vers le commentaire
Partager sur d’autres sites

D'après mon livre de référence et une recherche rapide sur le net, le tri n'existe pas (confirmation).

Par contre, tu peut soit coder rapidement une fonction de tri en une vintaigne de lignes, soit récupérer une classe qui fait ça comme le suggère ubik.

Mais en général les données qui ne sont pas statiques sont dans une base de données et le tri se fait à ce niveau là.

Lien vers le commentaire
Partager sur d’autres sites

merci pour les réponses,

C'est un simple tri de mots d'un texte donc les fonctions de base devraient suffire.

Pour la plannification, je pense qu'il faudra passer par un soft tier. Un deamon qui lance les appels. Mais pour cela, faut avoir les privilèges nécessaires. Ce n'est pas chez un hebergeur gratuit voir même payant de première zone que l'on va m'autoriser à fairer tourner un programme. Enfin il y a certainement moyen de trouver cela.

Si la plannifiaction n'existe pas en php comme tu dis, cela veut dire que l'attente passive d'un process non plus. Sinon il y aurai moyen de le développer. C'est domage tout de même.

Si vous avez encore des idées n'hésitez pas, merci.

Lien vers le commentaire
Partager sur d’autres sites

pour un singloton ( plus adapté en php5 ) :

<?php 
Class kiki { 
  static $inst; 
  private function __construct() { 
   //constructeur privé pour garder l'instanciation propre a la classe
  } 
  static function getInstance() { 
       if (empty(self::$inst)) { //si pas instancié on cree
        self::$inst= new kiki;   
      } 
     return self::$inst;  // on retourne l'instance 
  } 

} 
?> 

Ca vaut pas encore le modele j2ee pour les appli web mais a force on s'en rapproche lol et pis le mode objet plus poussé de php5 permet de faire pas mal de design pattern supplementaires.

Sinon pour la planification essaye de rajouter un cron via popen() de php ( meme chose qu'en C a par que le mode r/w est exclu c'est soit l'un ou l'autre )

Sinon pour un quick sort de base je ne pense pas que ca existe mais bon une tite fonction en plus ca fait pas de mal :)

edit:tite erreur dans le code

Lien vers le commentaire
Partager sur d’autres sites

Webcron est-il fiable?

Oui c'est une solution, sinon il y a toujours moyen de faire le même système depuis chez moi avec un petit pc connecté au web qui appel le script.

Pour le singleton, c du tout bon.

Merci,

ps: et en ce qui concerne l'attente passive et l'execution de script en background? mais là je pense que ce n'est pas possible.

Lien vers le commentaire
Partager sur d’autres sites

ps: et en ce qui concerne l'attente passive et l'execution de script en background? mais là je pense que ce n'est pas possible.

Comme je l'ai dit au dessus tu bricole un truc avec popen mais attention la grande majoritée des serveurs gratuits n'acceptent pas

Pour verifier un ti code from scratch

<?
 $cron = popen('crontab -l 2>&1', 'r'); // 2> $1 pour afficher stderr et r pour lecture seule
 $bla = fread($cron, 1048);
 echo $bla;
 pclose($cron);
?>

Si tu as un "no crontab for apache " ou un "no crontab for www " c'est du tout bon :)

Tu recommence le meme genre de script mais cette fois en w et tu peux ajouter ton crontab avec le script de ton choix.

edit: Un front end via un script php http://sourceforge.net/projects/phpcron/ mais regarde le code a mon avis c'est remplit de bug mais c'est un bon depart pour s'inspirer.

Lien vers le commentaire
Partager sur d’autres sites

Archivé

Ce sujet est désormais archivé et ne peut plus recevoir de nouvelles réponses.

×
×
  • Créer...