Page 1 sur 1

insertion de code issu d'un autre fichier

Posté : 29 sept. 2009, 15:26
par enneite
tant que j'y suis,

je veux appeler des têtières dans certaine pages...
A priori les tetières sont en html pur et pas en php
qu'est ce qui est le plus performant entre :
<?php

//... code php

//appel de têtière :
//1)
include_once "tetiere.html";
//2)
echo file_gets_contents("tetiere.html");
//3)
$handle=fopen("tetiere.html","r");
$contenu=fread($handle,filesize("tetiere.html"));
echo $contenu;



//...suite du code php
?>
en imaginant que les tetiers soient maintenant fait en php et plus en html simple :

<?php

//... code php

//appel de têtière :
//1)
include_once "tetiere.php";
//2)
echo file_gets_contents("http://www.monsite.com/tetiere.php");
//3)
$handle=fopen("tetiere.html","r");
$contenu=fread($handle,filesize("http://www.monsite.com/tetiere.php"));
echo $contenu;



//...suite du code php
?>

Re: insertion de code issu d'un autre fichier

Posté : 29 sept. 2009, 17:15
par niuxe
Hello,

Avoue que ton code est un peu loufoque n'est ce pas ?
qu'est ce qui est le plus performant
Je dirai le html. Il n'y a pas de calcul/opération à faire.

Afin de corriger ton code, ce serait plutôt :
$tetiere = file_gets_contents("tetiere.html");
echo $tetiere;

//etc.
et
include_once "tetiere.php";

//etc.
++

Re: insertion de code issu d'un autre fichier

Posté : 29 sept. 2009, 17:35
par enneite
ouais, alors, en allant encore un peu plus loin, on peut avoir aussi le cas suivant
des tetieres en HTML ou PHP mais sur des serveurs distants
du coup , on peut avoir plusieurs possibilites :

1) on appelle directement le contenu du fichier dans les pages php du site
<?php
//...
echo file_gets_contents("http://www.monsite.com/tetiere.html");
...//
?>
2) on lance chaque nuit un script recupere_tetiere_en_variabl_globale.php
<?php
$GLOBALS["tetiere"]=file_gets_contents("http://www.monsite.com/tetiere.html");
?>
et ensuite c'est $GLOBALS["tetiere"] qu'on appelle dans les pages php du site.

Intuitivement, je pense que la seconde méthode demande moins de ressource.
Sauf qu'il faut prevoir le cas ou le serveur redemarre et ou il faut reinitialiser $GLOBALS["tetiere"] ...