Soyez le premier à donner votre avis sur cette source.
Snippet vu 7 832 fois - Téléchargée 30 fois
<?php // Pas de limite de temps à l'execution set_time_limit( 0 ); // Reporte toutes les erreurs error_reporting( E_ALL ); // class AddCopyright class AddCopyright { // Format du copyright var $copyright = '© Copyright %s. Tous droits réservés.'; // Initialisation du tableau contenant les fichiers var $files = array(); // Filtres var $ignore = array( '.', '..' ); // Constructeur function AddCopyright( $owner, $path = '.' ) { // Formatte le copyright $this->copyright = sprintf( $this->copyright, $owner ); // Recherche les fichiers image $this->CheckFiles( $path ); // Pour chaque fichier ... foreach ( $this->files as $file ) { // ... insère le copyright $this->WriteCopy( $file ); } // Affiche un message de fin echo 'Copyright inséré !'; } // Recherche les fichiers image function CheckFiles( $path ) { // Ouvre le répertoire courant ... $dp = opendir( $path ); // ... et le lit while ( ( $file = readdir( $dp ) ) !== false ) { // Filtre les répertoires/fichiers contenu dans // le tableau $ignore if ( !in_array( $file, $this->ignore ) ) { // Si le fichiers lu est un dossier, ... if ( is_dir( $path . '/' . $file ) ) { // on l'ouvre en appelant de nouveau la // fonction Checkfiles() $this->CheckFiles( $path . '/' . $file ); } // Sinon elseif ( is_file( $path . '/' . $file ) && // Si le fichier est bien une image ( substr( $file, strlen( $file ) - 3, 3 ) == 'png' || substr( $file, strlen( $file ) - 3, 3 ) == 'gif' || //!\\ Attention, je n'ai pas testé sur //!\\ le format JPEG ! substr( $file, strlen( $file ) - 3, 3 ) == 'jpg' ) ) { // Onm l'indexe dans le tableau $files $this->files[] = $path . '/' . $file; } } } // On ferme le répertoire closedir( $dp ); } // Insère le copyright dans une image function WriteCopy( $file ) { // Ouvre le fichier image en mode "ajouter" $fp = fopen( $file, 'a' ); // Insère le copyright fwrite( $fp, $this->copyright ); // Ferme le fichier fclose( $fp ); } } // Utilisation de la classe relativement simple, il vous // suffit simplement de placer le script à la racine de // site/dossier et de l'exécuter. Le 2ème paramètre est // obtionnel. // Notez qu'il suffit que d'une seule ligne. // // Prennez soin de faire des copies de vos images avant // d'y insérer le copyright sinon en cas de réutilisation // du script, il serait ajouté une 2ème fois ! $copy = new AddCopyright( 'Votre nom ou l\'adresse de votre site web', '.' ); ?>
13 mars 2007 à 12:36
13 mars 2007 à 12:00
Au lieu de mettre ça :
//!\\ Attention, je n'ai pas testé sur
//!\\ le format JPEG !
Tu peux mettre ça :
|| substr( $file, strlen( $file ) - 4, 4 ) == 'jpeg'
Moi aussi je déteste les extensions en majuscule, mais beaucoup d'appareil photo adore ça :
pour les extensions jpg,JPG,gif,GIF,png,PNG,jpeg,JPEG :
strtolower( substr( $file, strlen( $file ) - 3, 3 ) ) == 'png'
||
strtolower( substr( $file, strlen( $file ) - 3, 3 ) ) == 'gif'
||
strtolower( substr( $file, strlen( $file ) - 3, 3 ) ) == 'jpg'
||
strtolower( substr( $file, strlen( $file ) - 4, 4 ) ) == 'jpeg'
(ça marche aussi sur les gif animés)
10/10 + Merci.
15 juin 2005 à 12:53
Je me demandais comment j'allais faire pour mettre un copyright sur mes photos, j'ai trouvé :)
11 juin 2005 à 09:06
mets un arobase à ta fonction set_time_limit() car elle est souvent désactivée par les hébergeurs mutualisés.
@set_time_limit(0);
Ensuite c'est un bon code simple et assez bien codé.
a +
Vous n'êtes pas encore membre ?
inscrivez-vous, c'est gratuit et ça prend moins d'une minute !
Les membres obtiennent plus de réponses que les utilisateurs anonymes.
Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes et codes sources.
Le fait d'être membre vous permet d'avoir des options supplémentaires.