JeuWeb - Crée ton jeu par navigateur
[Résolu] Edition et suppression dans un fichier texte - Version imprimable

+- JeuWeb - Crée ton jeu par navigateur (https://jeuweb.org)
+-- Forum : Discussions, Aide, Ressources... (https://jeuweb.org/forumdisplay.php?fid=38)
+--- Forum : Programmation, infrastructure (https://jeuweb.org/forumdisplay.php?fid=51)
+--- Sujet : [Résolu] Edition et suppression dans un fichier texte (/showthread.php?tid=2453)

Pages : 1 2


RE: Edition et suppression dans un fichier texte - naholyr - 23-03-2008

Sérieux, abandonne ce format bizarre.

Tu n'as d'ailleurs besoin d'aucun format particulier : vu que dans tous les cas tu charges tout dans un tableau, autant gérer directement ton tableau Smile
include() et var_export() sont les seuls outils dont tu as besoin, pas besoin de parseur !

Code PHP :
<?php 
// Charger les news
$news = include 'toutes-les-news.php';
print_r($news);

/**
array(
[0] => array(
[titre] => "Titre Note 1",
[texte] => "Contenu Note 1",
[date] => 1203592468
),
[1] => array(
[titre] => "Titre Note 2",
[texte] => "Contenu Note 2",
[date] => 1203592468
),
[2] => array(
[titre] => "Titre Note 3",
[texte] => "Contenu Note 3",
[date] => 1203592468
)
)
**/

// Enregistrer les news
file_put_contents('toutes-les-news.php', '<?php return ' . var_export($news, true) . ';');

// Ajouter une news
$news[] = array(
'titre' => 'Mon titre',
'texte' => 'Contenu de ma news',
'date' => time(),
);
file_put_contents('toutes-les-news.php', '<?php return ' . var_export($news, true) . ';');

// Supprimer une news
unset($news[1]);
file_put_contents('toutes-les-news.php', '<?php return ' . var_export($news, true) . ';');

// etc...

Puis bon après quand-même, il faudra penser à mettre ça dans une bdd et faire du beau code propre Smile


RE: Edition et suppression dans un fichier texte - Valter - 23-03-2008

Mais quel est l'avantage de l'utilisation d'un fichier xml plutôt qu'une base de données ?
Moins de requêtes sql ? Plus de rapidité ?


RE: Edition et suppression dans un fichier texte - Sephi-Chan - 24-03-2008

Oui, la manipulation de fichiers est plus rapide que l'utilisation d'une base de données (qui elle aussi est faîte de fichiers, forcément). Simplement, à partir du moment où il faut faire plein de traitements avec PHP, alors ça ne vaut plus le coup.

L'avantage de XML, c'est que le parser est natif à PHP 5, et que c'est un format facilement lisible par l'homme et facilement utilisable par tous les langages.

XML est très souple, par exemple, on peut rendre accessible des données de notre jeu à d'autres sites. Imagine que tes joueurs forment une guilde et voudraient avoir les informations relatives à leur guilde sur leur site, et bien tu n'as qu'à exporter toutes les X heures un fichier XML qui contient ces données, et comme ça le webmaster peut l'utiliser pour se faire un module (ou bien tu peux proposer toi même ce module, moyennant un micro paiement hebdomadaire, par exemple).

C'est ce genre de chose qu'utilise l'armurerie de World of Warcraft.


Sephi-Chan


RE: Edition et suppression dans un fichier texte - Valter - 24-03-2008

D'accord merci Wink Je vais engager cette perspective à l'avenir Smile


RE: Edition et suppression dans un fichier texte - daroth - 25-03-2008

Une autre solution est celle là :
1 - Tu lis tout ton fichier txt et tu créé un tableau à partir des données
2 - tu cherche les cases tu tableau qui t'intéressent et tu modifie leurs valeurs (ou tu les enlève en cas de suppression)
3 - Tu recréé le format texte et tu le réécrit dans la fichiers texte (tu peut même t'amuser à conserver les anciennes versions du fichier texte pour créer une sorte d'archive des news).

@++