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
|
<?php
// src/File.php
class File
{
static public function makeFile(string $path, string $file_name, mixed $data): void
{
if(!is_dir($path) || !is_writable($path)){
echo "erreur: dossier de destination interdit en écriture\n";
}
if(!file_put_contents($path . $file_name, $data)){ // le / ajouté dans PrestaLatex::setData
echo "erreur: dossier de destination interdit en écriture\n";
}
chmod($path . $file_name, 0644); // droits en octal
}
//~ protected function createFile(string $latex, string $file_name, string $latexPath)
//~ {
//~ // nom du fichier créé = nom.tex
//~ // pour les devis, factures et enveloppes, le nom est le code la prestation
//~ // pour les livre de recettes et registres des achats mensuels:
//~ // le nom du fichier suit cet exemple: "Recettes-2022-06-Juin.tex"
//~ // pour le livre de recette ou le registre des achats annuel, même principe: "Achats-2022.tex"
//~ // pour le bilan comptable annuel, ça donne: "Bilan-2022.tex"
//~ $fichier = fopen($latexPath . $file_name, "w+");
//~ fputs($fichier, $latex);
//~ fclose($fichier);
//~ }
static public function makeFolder(string $path): void
{
if(!is_dir($path)){
if(!mkdir($path, 0755)){
echo "erreur : impossible de créer le dossier.\n";
return;
}
}
elseif(!chmod($path, 0755)){
echo "erreur: impossible de modifier les permissions du dossier\n";
}
}
// équivalent de la commande mv
static public function renameFiles(Object $Object, string $old_code, string $new_code): void
{
rename($Object->getLatexPath() . $old_code . '.tex',
$Object->getLatexPath() . $new_code . '.tex');
rename($Object->getPdfPath() . $old_code . '.pdf',
$Object->getPdfPath() . $new_code . '.pdf');
}
//~ function removeFile(Object $Object)
//~ {}
}
|