Questo sito utilizza cookies, anche di terze parti, per mostrare pubblicità e servizi in linea con il tuo account. Leggi l'informativa sui cookies.
Username: Password: oppure
PHP - tempo di elaborazione del function e del class
Forum - PHP - tempo di elaborazione del function e del class

Avatar
Niubbo (Normal User)
Rookie


Messaggi: 55
Iscritto: 02/02/2013

Segnala al moderatore
Postato alle 16:59
Venerdì, 15/02/2013
ciao
ho visto che per andare avanti con il php e comprendere le cose piu grandi è obbligatorio imparare le classi!
anche se sono antipatiche per me, ho deciso di rifare l'esercizio della estrappolazione dei feed rss (che ho postato nell'altro post)
la domanda è un po' stupida, ma son curioso.. ho notato che nel fare la stessa cosa ci mette piu tempo quando uso le classi rispetto alle funzioni!
perche?!
è solo un caso?

niubbo8-|

Ultima modifica effettuata da Niubbo il 15/02/2013 alle 18:55


parto da sotto terra e voglio imparare php...
per cortesia datemi risposte con un minimo di spiegazione..
Niubbo
PM Quote
Avatar
Qwertj (Dev Team)
Guru


Messaggi: 678
Iscritto: 30/05/2011

Segnala al moderatore
Postato alle 15:20
Sabato, 16/02/2013
dipende da come hai modificato il codice... hai creato delle classi tu? usi quelle di php?
postalo.


Blog:
<coming soon>
Appalo:
http://www.appalo.it/
PM Quote
Avatar
Niubbo (Normal User)
Rookie


Messaggi: 55
Iscritto: 02/02/2013

Segnala al moderatore
Postato alle 17:20
Sabato, 16/02/2013
Ciao Qwertj
si ovviamente l'ho creata io:D... e ovviamente la devo ancora migliorare, perche vorrei estrappolare piu dati dai feed.. questo è solo il primo tentativo8-|

magari ci mette cosi tanto per la quantità di link da estrappolare boh.. magari mi sbaglio..

cmq ecco il codice e grazie per l'interessamento!

Codice sorgente - presumibilmente Php

  1. <?php
  2.  
  3. class get_link{
  4.         /*
  5.         E' una classe che dato un link feed rss estrappola i link
  6.         delle notizie e li mette in un vettore.
  7.         Restituisce il vettore
  8.         */
  9.        
  10.         // dichiarazione variabili
  11.         public $xlm_file = "";
  12.         public $vet_link = array ();
  13.         // Dichiarazione del costruttore
  14.         public function __construct($link){
  15.                 $this->xlm_file = file_get_contents($link);
  16.                 echo "<p>Link Aquisitio...</p>";
  17.         }
  18.        
  19.         // Dichiarazione del metodo
  20.         public function get_link(){
  21.                 $x=0;
  22.                 $file = strstr($this->xlm_file,"<guid");
  23.                 $file = strstr($file,"http");
  24.                 while(($x!=-1)&&($x<strlen($file))){
  25.                         $position_f = strpos($file,"</guid>");
  26.                         if ($position_f >0 ){
  27.                                 $this->vet_link[$x] = strip_tags(substr($file,0,$position_f));
  28.                                 $file = strstr($file,"<guid");
  29.                                 $file = strstr($file,"http");
  30.                                 $x++;
  31.                         }
  32.                         else{
  33.                                 $x = -1;
  34.                         }
  35.                 }
  36.         echo "estrappolazione dei link è comletata!<br>";
  37.         echo "i link sono salvati nel vettore vet_link";
  38.         }
  39.         public function print_vet(){
  40.                 $v = $this->vet_link;
  41.                 echo "Trovati ".count($v)." links e sono:<br><br>";
  42.                 echo implode("<br>",$this->vet_link);
  43.                
  44.         }
  45.         // distruttore
  46.     public function __destruct() {
  47.                 echo "<br><br><br>";
  48.                 echo "*************************<br>";
  49.                 echo "* __FINE DELLO SCRIPT__ *<br>";
  50.                 echo "*************************<br>";
  51.     }
  52.  
  53. }
  54.  
  55. $prova = new get_link('http://www.edilportale.com/rss.xml');
  56. $prova->get_link();
  57. echo "<br><br>";
  58. $prova->print_vet();
  59. ?>



niubbo8-|


parto da sotto terra e voglio imparare php...
per cortesia datemi risposte con un minimo di spiegazione..
Niubbo
PM Quote
Avatar
Qwertj (Dev Team)
Guru


Messaggi: 678
Iscritto: 30/05/2011

Segnala al moderatore
Postato alle 18:47
Sabato, 16/02/2013
ed è più lento rispetto a cosa?


Blog:
<coming soon>
Appalo:
http://www.appalo.it/
PM Quote
Avatar
Niubbo (Normal User)
Rookie


Messaggi: 55
Iscritto: 02/02/2013

Segnala al moderatore
Postato alle 19:37
Sabato, 16/02/2013
Testo quotato

Postato originariamente da Qwertj:
ed è più lento rispetto a cosa?



rispetto al codice scritto nell'altro post.. dove  tu mi hai dato una mano!
tipo questo per macinare ci metteva 2-3 sec
l'altro invece dava risposta immediatamente.

cmq ho fatto un errore a dir poco banale e cioè:
al codice-classi ho fatto macinare un rss strapieno di link (tipo 20 o piu)
al codice-funzioni ho fatto macinare un rss con pochi link!

banale.. ma fatale:_doubt:
ovviamente provando lo stesso rss funzionano uguale... forse e dico forse il processore si scalda un pochino con le classi8-|:D:rotfl:
ti ringrazio qwertj.. e scusa per sta cavolata:-|
niubbo8-|


parto da sotto terra e voglio imparare php...
per cortesia datemi risposte con un minimo di spiegazione..
Niubbo
PM Quote
Avatar
Qwertj (Dev Team)
Guru


Messaggi: 678
Iscritto: 30/05/2011

Segnala al moderatore
Postato alle 19:47
Sabato, 16/02/2013
:_doubt:
vabbè...


Blog:
<coming soon>
Appalo:
http://www.appalo.it/
PM Quote