[Résolu] Sauver des pages html en php

Je cherche un moyen de sauver automatiquement des pages php en html. En gros c’est une vingtaine des pages avec des includes (header.php, footer.php,etc) que je dois à chaque fois envoyer au client en html.

J’avais trouvé ce script, mais ça ne marche pas vraiment, ça me sort bien des fichiers html, mais ils font 0 kb :-/

<?php $files = file("files.txt"); for($i = 0; $i < count($files); $i++) { ob_start(); include($files[$i]); $page = ob_get_contents(); ob_end_clean(); if(strpos($files[$i], ".php") > -1) { $file = fopen(substr($files[$i], 0,strlen($files[$i])-4) . ".html",'w'); fputs($file, $page); fclose($file); } } ?>

Quelqu’un aurait une solution ?

C’est surement jouable en ligne de commande à partir du moment ou tes pages PHP n’utilise pas des éléments venant du navigateur (SESSION, $_SERVER).
En gros un “php tonfichier.php > autrefichier.html” ca doit correspondre à ce que le serveur aurait affiché au navigateur.

HTTrack ? ou j’ai peut être mal compris le besoin.

<?php file_put_contents("monfichier.html", file_get_contents("http://www.monurl.tld/path/")); ?> :slight_smile:

wget sinon non?

Afficher la page dans un browser et la sauvegarder soit en affichant la source soit directement?

Nickel ça marche merci !

<?php $prep = opendir('.'); while (false !== ($filename = readdir($prep))) { if(ereg(".php",$filename)) { file_put_contents($filename.".html", file_get_contents("http://www.monurl.tld/path/".$filename)); } } ?>