Bonjour à tous,
j'ai crée differents fonctions qui me premettent tout de manipuler des fichiers afin de les transformer en pdf , jpg , tiff.
Après beaucoup de relecture des tutoriels de malaam concernant les design pattern et malgrès que mon code soit dejà fonctionnel, je voulais essayer de m'en inspiré , histoire d'essayer d'evoluer et de progesser ( aille ca va etre dure !!).
Comment modelisé ce que je souhaite faire .
Mon code fonctionnel est le suivant :
function CreationCheminAbsoluPourDosEnregistrementImage($sChemin){
static $sIntermittent,$sCheminProtege;
$sIntermittent=str_replace('\\','"\"',$sChemin); #1
$sCheminProtege='"'.$sIntermittent.'"';
unset($sIntermittent);
return $sCheminProtege;
}
/** Pour transformer un fichier .doc en fichier . pdf **/
function CreationCheminAbsoluPourDos($sChemin){
static $sIntermittent,$sCheminProtege;
$sIntermittent=str_replace('\\','"\"',$sChemin);
$sCheminProtege='"'.$sIntermittent.'"';
unset($sIntermittent);
return $sCheminProtege;
function SaveAllDocToPdf ($sPathToStore){
static $aMyArray=array();
if (is_dir($sPathFinal)===TRUE) {
wb_message_box($window, $sPathFinal,"ceci est bien un dossier",WBC_INFO);
**/
if ($pDirectory = opendir($sPathToStore)) { // opendir nous renvoit un pointeur sur le dossier
// on initiliase
while (false !== ($sFile = readdir($pDirectory))){
//je ne dois convertir que les fichiers .doc en .pdf car il se peut qu'il y ait des fichiers .pdf
//$sExtensionFile renvoit une chaine de carctere ie doc ou pdf ou jpg
$sExtensionFile=pathinfo($sFile,PATHINFO_EXTENSION);
if ($sFile != "." && $sFile != "..") {
if ($sExtensionFile =="doc"){
wb_set_text($iStatusBar,'Conversion de '.$sFile.' en pdf');
$aMyArray[]=$sFile;
}
}
}// fin du while
closedir($pDirectory);// je ferme le handle de manipulation du dossier qui contient les cartes ernt
}else{
wb_message_box($window,'Listage des fichiers impossible','Répertoire illisible',WBC_INFO);
}
foreach ($aMyArray as $sValeur){
SaveAsPdf ($sPathToStore.'\\'.$sValeur);
}
unset($aMyArray);
}else{
wb_message_box($window, $sPathFinal.'n\'est pas un dossier ','Dossier invalide',WBC_INFO);
}**/
}
function SaveAsPdf ($sFichierAsauver){
global $sCheminScriptVbConvertToPdf;
static $sFichier;
if(file_exists($sFichierAsauver)===FALSE){
wb_message_box($window,'Le fichier '.$sFichierAsauver.' à transformer en pdf n\'existe pas. ','Transformation en Pdf', WBC_INFO);
return FALSE;
}else{
$sFichier=CreationCheminAbsoluPourDos($sFichierAsauver);
// for debug wb_message_box($window,'Fichier apres conversion Dos '.$sFichier.' ','Transformation en Pdf', WBC_INFO);
exec($sCheminScriptVbConvertToPdf." ".$sFichier);
unset($sFichier);
return TRUE;
}
}
function SaveAsPng ($sFichierAsauver){
global $sCheminScriptVbConvertToPng;
static $sFichier;
$sFichier=CreationCheminAbsoluPourDosEnregistrementImage($sFichierAsauver);
exec($sCheminScriptVbConvertToPng." ".$sFichier);
unset($sFichier);
return TRUE;
}
function SaveAsTiff($sFichierAsauver){
global $sCheminScriptVbConvertToTiff;
static $sFichier;
$sFichier=CreationCheminAbsoluPourDosEnregistrementImage($sFichierAsauver);
exec($sCheminScriptVbConvertToTiff." ".$sFichier);
unset($sFichier);
return TRUE;
}
function SaveAsJpg($sFichierAsauver){
global $sCheminScriptVbConvertToJpg;
static $sFichier;
$sFichier=CreationCheminAbsoluPourDosEnregistrementImage($sFichierAsauver);
exec($sCheminScriptVbConvertToJpg." ".$sFichier);
unset($sFichier);
return TRUE;
}
function SaveAsBmp($sFichierAsauver){
global $sCheminScriptVbConvertToBmp;
static $sFichier;
$sFichier=CreationCheminAbsoluPourDosEnregistrementImage($sFichierAsauver);
exec($sCheminScriptVbConvertToBmp." ".$sFichier);
unset($sFichier);
return TRUE;
}
je pensais utilisé des
interface Sauvegarde{
public function Save($sFichierASauver)
}
class Sauve implements Sauvegarde{
public function Save($sFichierASauver)
}
mais comment definir mes autres fonctions ??
merci d'avance por vos propositions