Bonjour,
J'aimerais publier sur mon site un flux xml existant en récupérant uniquement les titres d'articles via php.
Le flux xml contient déjà 1000 entrées dont chacune possède un ID.
Je lance une cron tous les jours pour récupérer les nouveaux titres d'articles. Donc tous les jours il va passer sur les 1000 entrées pour en récupérer seulement 1 ou 2 nouvelle par jour.
Et c'est là où je me pose une question cruciale. Quel est le plus économique en ressource ?
1) Une boucle php dans le parser qui va faire un insert SQL a chaque ligne. Si l'ID existe deja, n’insère rien.
2) J'effectue en premier une requette SQL qui va lister tous les ID déjà rentrés dans la base. En mettant les résultat dans un tableau avec un séparateur {8,9,10,11,12,13,etc...}
Et dans ma boucle du parser, je vais inserer uniquement les ID qui ne sont pas dans ce tableau. Sans faire de check mysql a chaque fois.
Voici mon code juste pour que vous voyez a partir de quoi je pars (je ne vous demande pas de coder a ma place hein )
Code :
- <?php
- $fichier = "http://lesiteaparser.com/xml.php";
- $xml = simplexml_load_file($fichier);
- foreach($xml as $titre){
- echo $titre->titre.'<br>'; // On va pas se prendre la tête avec l'insertion, je vous montre juste ma boucle
- }
- ?>
|
Alors selon-vous, solution 1 ou 2 ? ou autre ?
Merci
Message édité par tomware le 26-03-2015 à 02:01:48