blob: afcb1ca25a2363be18ee2ba6568b8e02186e9053 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
|
<?php
// model/Article.php
class Article
{
private $page = ''; // page et donc dossier concerné
private $croissant = True; // ordre des éléments du tableau $files
private $files; // noms des fichiers d'un dossier
private $nbArticles; // peut servir
private $articles; // contenu de ces mêmes fichiers
private function getFiles()
{
if($this->page == '')
{
die("debug: la méthode setPage() doit être appelée avant toute autre.");
}
$this->files = glob('data/' . $this->page . '/html/*.html');
if($croissant == False)
{
$files = array_reverse($files);
}
$this->nbArticles = count($this->files);
}
// fonctions CRUD (create - read - update - delete)
// ce sont les 4 opérations de base qu'un programme doit permettre pour être complet
// create
public function create($content)
{
if($this->page == '')
{
die("debug: la méthode setPage() doit être appelée avant toute autre.");
}
$nom_fichier = time() . '.html';
$fichier = fopen('data/' . $this->page . '/html/' . $nom_fichier, 'w'); // w peut créer un fichier, si il existe déjà, il est effacé par le nouveau contenu
fputs($fichier, $content);
fclose($fichier);
chmod('data/' . $this->page . '/html/' . $nom_fichier, 0666);
}
// read
public function getNb()
{
return $this->nbArticles;
}
public function getOne()
{}
public function getAll($croissant)
{
$this->croissant = $croissant;
getFiles();
$i = 0;
foreach ($this->files as $file)
{
$articles[$i] = file_get_contents($file);
$i++;
}
return $articles;
}
public function getDate($fileNumber)
{
// le 2è paramètre exclut le suffixe .html
$timestamp = basename($this->files[$fileNumber], '.html');
return getdate($timestamp);
}
// update
public function update()
{}
public function setPage($page)
{
$this->page = $page;
}
// delete
public function delete()
{}
}
|