Oppure

Loading
15/02/13 15:59
Niubbo
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 15/02/13 17:55
aaa
16/02/13 14:20
Qwertj
dipende da come hai modificato il codice... hai creato delle classi tu? usi quelle di php?
postalo.
aaa
16/02/13 16:20
Niubbo
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!

<?php

class get_link{
	/*
	E' una classe che dato un link feed rss estrappola i link
	delle notizie e li mette in un vettore.
	Restituisce il vettore
	*/
	
	// dichiarazione variabili
	public $xlm_file = "";
	public $vet_link = array ();
	// Dichiarazione del costruttore
	public function __construct($link){
		$this->xlm_file = file_get_contents($link);
		echo "<p>Link Aquisitio...</p>";
	}
	
	// Dichiarazione del metodo
	public function get_link(){
		$x=0;
		$file = strstr($this->xlm_file,"<guid");
		$file = strstr($file,"http");
		while(($x!=-1)&&($x<strlen($file))){
			$position_f = strpos($file,"</guid>");
			if ($position_f >0 ){
				$this->vet_link[$x] = strip_tags(substr($file,0,$position_f));
				$file = strstr($file,"<guid");
				$file = strstr($file,"http");
				$x++;
			}
			else{
				$x = -1;
			}
		}
	echo "estrappolazione dei link è comletata!<br>";
	echo "i link sono salvati nel vettore vet_link";
	}
	public function print_vet(){
		$v = $this->vet_link;
		echo "Trovati ".count($v)." links e sono:<br><br>";
		echo implode("<br>",$this->vet_link);
		
	}
	// distruttore
    public function __destruct() {
		echo "<br><br><br>";
		echo "*************************<br>";
		echo "* __FINE DELLO SCRIPT__ *<br>";
		echo "*************************<br>";
    }
 
}

$prova = new get_link('http://www.edilportale.com/rss.xml');
$prova->get_link();
echo "<br><br>";
$prova->print_vet();
?>


niubbo8-|
aaa
16/02/13 17:47
Qwertj
ed è più lento rispetto a cosa?
aaa
16/02/13 18:37
Niubbo
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-|
aaa
16/02/13 18:47
Qwertj
:_doubt:
vabbè...
aaa