TutorielsVous débutez ? C'est ici qu'on commence !
Mon compte
Recherche
Livre d'or
PublicitéVous devez être inscrit pour pouvoir poster des messages
| Page : Précédente 1 2 3 ... 44 45 46 47 48 49 50 ... 97 98 99 100 Suivante | |
| Auteur | Message |
|---|---|
| 1 visiteur sur ce sujet (1 anonyme) | |
| Page : Précédente 1 2 3 ... 44 45 46 47 48 49 50 ... 97 98 99 100 Suivante | |
Asi
|
# Posté le 08/03/2007 à 22:56:15 |
Mangeur de Lapins Crus![]() Groupe : Membres |
Reprise du dernier message de la page précédente :
Citation : YondaimeLe $i ne sert à rien, il suffit de faire $retour_array[] = ..
Je sais que le [$i] sert à rien, j'ai vu ça en relisant ma fonction, j'ai dû la faire après une autre ou j'en avais besoin... (Je vais l'enlever pour te faire plaisir) Citation : Yondaime Et pour éviter le cas que tu cites, y a toujours les itérateurs
![]() Pas compris
|
nax
|
# Posté le 08/03/2007 à 22:58:30 |
![]() Groupe : Membres |
Pour générer une miniature :
Code : PHP <?php function resize($from, $dossier, $nom) { $ext = $from; $ext = substr($ext,strrpos($ext,".")+1); $ext = strtolower($ext); if($ext == 'jpg' or $ext == 'jpeg') $source = imagecreatefromjpeg($from); // On crée par une jpg elseif($ext == 'png') $source = imagecreatefrompng($from); // un png elseif($ext == 'gif') $source = imagecreatefromgif($from); // un gif // Les fonctions imagesx et imagesy renvoient la largeur et la hauteur d'une image $largeur_source = imagesx($source); $hauteur_source = imagesy($source); $largeur_destination = 100; // on peut choisir la largeur que l'on veut $hauteur_destination = 100 * $hauteur_source; // la hauteur est obtenue pour garder les proportions $hauteur_destination = $hauteur_destination / $largeur_source; $hauteur_destination = round($hauteur_destination); $destination = imagecreatetruecolor($largeur_destination, $hauteur_destination); // On crée la miniature vide // On crée la miniature imagecopyresampled($destination, $source, 0, 0, 0, 0, $largeur_destination, $hauteur_destination, $largeur_source, $hauteur_source); // On enregistre la miniature if(strrchr($nom,".") == ".jpg" OR strrchr($nom,".") == ".jpeg") imagejpeg($destination, $dossier . $nom); if(strrchr($nom,".") == ".png") imagepng($destination, $dossier . $nom); if(strrchr($nom,".") == ".gif") imagegif($destination, $dossier . $nom); } ?> $from est l'url du fichier de départ $dossier le dossier de destination (chmod 777) $nom, le nom de la miniature, penser à unigid() |
anonyme
|
# Posté le 08/03/2007 à 23:02:17 |
|
Groupe : |
Citation : Asibasth
Citation : Yondaime
Le $i ne sert à rien, il suffit de faire $retour_array[] = ..
Je sais que le [$i] sert à rien, j'ai vu ça en relisant ma fonction, j'ai dû la faire après une autre ou j'en avais besoin... (Je vais l'enlever pour te faire plaisir) Citation : Yondaime Et pour éviter le cas que tu cites, y a toujours les itérateurs
![]() Pas compris ![]() Les itérateurs, c'est un truc cool de PHP 5. Avec PHP 5, foreach peut accepter un objet comme argument, et les classes possèdent 5 méthodes "magique" : current, key, next, rewind et valid. http://frederic.bouchery.free.fr/?2004/11/01/30-Creer-Un-Iterateur-Avec-Php5 En résumé, tu passes la ressource à l'instanciation de la classe, et avec foreach, tu parcoureras toutes les lignes de ta ressource en évitant de faire deux boucles (l'exemple avec mysqli est assez parlant). Ca permet d'éviter de devoir faire ce que tu fais
|
Savageman
|
# Posté le 08/03/2007 à 23:50:02 |
Insa : If inside![]() Groupe : Membres |
... on va laisser tomber, j'arrive en retard, j'avais lu la page en cache...
Édité
le 08/03/2007 à 23:51:05
par Savageman
|
GuGus963
|
# Posté le 09/03/2007 à 00:05:33 |
Pour la connaissance libre !![]() Groupe : Membres |
Trier un tableau dans l'ordre alphabétique, avec insensibilité à la casse :Code : PHP function isort(&$array) {
$func = create_function('$a,$b', '$a = strtolower($a); $b = strtolower($b); if($a > $b) return 1; elseif($a == $b) return 0; else return -1;'); usort($array, $func); } Code : PHP Cela affichera : Code : Autre Bernard
Damien albatros chien Tandis que Code : PHP Cela affichera : Code : Autre albatros
Bernard chien Damien Obtenir la couleur inverse (pour une image par exemple)Code : PHP function colorInvOf($number, $fromBase = 10) {
if(is_array($number)) $number = arrayColorToInt($number); if($fromBase != 10) $number = base_convert($number, $fromBase, 10); $r = 255-($number >> 16) & 0xFF; $g = 255-($number >> 8) & 0xFF; $b = 255-$number & 0xFF; $dec_new = $r << 16; $dec_new += $g << 8; $dec_new += $b; return $dec_new; } Cette fonction utilise la fonction : Code : PHP function arrayColorToInt($array_colors, $toBase = 10) {
list($r, $g, $b) = $array_colors; $dec = $r << 16; $dec += $g << 8; $dec += $b; if($toBase != 10) $dec = base_convert($dec, 10, $toBase); return $dec; } Et pour les exemples : Code : PHP function intToArrayColor($number, $fromBase = 10) {
if($fromBase != 10) $number = base_convert($number, $fromBase, 10); $r = ($number >> 16) & 0xFF; $g = ($number >> 8) & 0xFF; $b = $number & 0xFF; return array($r, $g, $b); } Voici un exemple : Code : PHP $couleur_array = array(255, 40, 127); //les couleurs rgb de la couleur (dans l'ordre : rouge, vert, bleu)
$couleur_dec = arrayColorToInt($couleur_array); //16722047 list($r, $g, $b) = $couleur_array; $couleur_inv_dec = colorInvOf($couleur_dec); //55168 $couleur_inv_array = intToArrayColor($couleur_inv_dec); //les couleurs rgb de la couleur inverse (dans l'ordre rouge vert bleu) list($r_inv, $g_inv, $b_inv) = $couleur_inv_array; echo "<span style=\"color:rgb($r, $g, $b);\">salut</span><br/>\n"; echo "<span style=\"color:rgb($r_inv, $g_inv, $b_inv);\">salut</span><br/>"; Ceci affiche : Code : HTML <span style="color:rgb(255, 40, 127);">salut</span><br/>
<span style="color:rgb(0, 215, 128);">salut</span><br/> Cela peut paraître compliqué, mais ça ne l'est pas :X Wikipédia, encyclopédie libre (anglais) Wiktionnaire, dictionnaire libre (anglais) FSF : Free Software Foundation || GNU : GNU's not UNIX Ubuntu, Linux for Human Beings || Gentoo Linux || OpenBSD : Free, Functional & Secure || Debian ![]() |
A-spec59
|
# Posté le 09/03/2007 à 00:39:56 |
Réfléchissez !![]() Groupe : Membres |
Citation : Arnaud
Pour générer une miniature :
Bien mais imagecopyresampled créé une image miniaturisée certes, mais qui est des fois plus lourde que l'image non miniaturisée. Donc moi je préfère repasser un coup par dessus avec les fonctions pour créer des images à partir d'autre, en prenant comme source l'image miniaturisée.
... Edit : euh GuGus963 t'aurais pas réinventé "la roue" ????
Édité
le 09/03/2007 à 00:44:11
par A-spec59
Green Searches, 1ère bêta. Pourquoi faire des recherches de façon écologique devrait-il se réduire à des recherches web. Green Searches vous permet aussi de faire des recherches d'images, de vidéos (à venir), de livres, dans les actualités .... Je cherche des petit trucs à faire contre petite rémunération (traduction, codage de script, graphisme, ... ) Plus de détails => me contacter What I can do |
NL
|
# Posté le 09/03/2007 à 00:44:06 |
![]() Groupe : Membres |
Citation : GuGus963
Trier un tableau dans l'ordre alphabétique, avec insensibilité à la casse :Mouais, en même temps, y a plus simple hein
Code : PHP <?php
$tableau = array('Damien', 'albatros', 'Bernard', 'chien'); $tableau_minuscules = array_map('strtolower', $tableau); array_multisort($tableau_minuscules, SORT_ASC, SORT_STRING, $tableau); echo '<pre>'; print_r($tableau); echo '</pre>'; ?> Qui affiche : Code : Autre Array
( [0] => albatros [1] => Bernard [2] => chien [3] => Damien ) Pour peu que tu crées une fonction qui prend en argument le tableau, tu peux le faire plus simplement, avec gestion de l'ordre de tri : Code : PHP function tri_array($tableau, $ordre)
{ $tableau_minuscules = array_map('strtolower', $tableau); if($ordre == 'asc') return array_multisort($tableau_minuscules, SORT_ASC, SORT_STRING, $tableau); else return array_multisort($tableau_minuscules, SORT_DESC, SORT_STRING, $tableau); } Edit : A-spec59, je la connaissais pas celle-là, elle est encore plus simple vu qu'elle est insensible à la casse, mais tu peux pas sélectionner l'ordre de tri, non ?
Édité
le 09/03/2007 à 01:03:23
par NL
|
GuGus963
|
# Posté le 09/03/2007 à 00:45:39 |
Pour la connaissance libre !![]() Groupe : Membres |
Voici mon script pour miniaturiser
:
Code : PHP <?php
//MINIATURISER AVEC UN POURCENTAGE function miniaturePercent($source, $mimetype = null, $pourcentage = 80) { if($pourcentage == 0) { $pourcentage = 1; } if(is_file($source) && in_array($mimetype, array('png', 'gif', 'jpeg', 'jpg'))) { $mimetype = 'imagecreatefrom'.str_replace('jpg', 'jpeg', $mimetype); $source = $mimetype($source); } elseif(is_resource($source) && @get_resource_type($source) == 'gd') { //ok } else { return false; } $pourcentage = 1/$pourcentage*100; $sourceX = imagesx($source); $sourceY = imagesy($source); $miniatureX = round($sourceX/$pourcentage, 0); $miniatureY = round($sourceY/$pourcentage, 0); $miniature = imagecreatetruecolor($miniatureX, $miniatureY); imagecopyresampled( $miniature, $source, 0, 0, 0, 0, $miniatureX, $miniatureY, $sourceX, $sourceY ); return $miniature; } //MINIATURISER AVEC LARGEUR ET/OU HAUTEUR EN PIXELS (meilleure méthode en général) function miniaturePx($source, $mimetype = null, $XY) { if(is_file($source) && in_array($mimetype, array('png', 'gif', 'jpeg', 'jpg'))) { $mimetype = 'imagecreatefrom'.str_replace('jpg', 'jpeg', $mimetype); $source = $mimetype($source); } elseif(is_resource($source) && @get_resource_type($source) == 'gd') { // ok } else { return false; } $sourceX = imagesx($source); $sourceY = imagesy($source); if(is_array($XY)) { $miniatureX = (isset($XY['x'])) ? round($XY['x'], 0) : null; $miniatureY = (isset($XY['y'])) ? round($XY['y'], 0) : null; if($miniatureX == null && $miniatureY == null) { return miniaturePercent($source, $mimetype, 80); } elseif($miniatureX == null) { $percent = $miniatureY/$sourceY; $miniatureX = round($sourceX*$percent, 0); } elseif($miniatureY == null) { $percent = $miniatureX/$sourceX; $miniatureY = round($sourceY*$percent, 0); } $miniature = imagecreatetruecolor($miniatureX, $miniatureY); imagecopyresampled( $miniature, $source, 0, 0, 0, 0, $miniatureX, $miniatureY, $sourceX, $sourceY ); return $miniature; } else { return false; } } imagepng(miniaturePx( 'FichierQuelconque (ou resource image).gif', //nom du fichier. Cela peut également être un resource d'image 'gif', //le type du fichier (vous pouvez mettre null si le premier paramètre est une resource d'image array('x'=>500) //un tableau contenant soit : x et y, la largeur et hauteur de l'image, soit seulement x, calcule automatiquement la valeur en y, et inversement. )); //avec miniaturePercent imagejpeg(miniaturePx( 'MonFichier.png', //nom du fichier. Cela peut également être un resource d'image 'png', //le type du fichier (vous pouvez mettre null si le premier paramètre est une resource d'image 70 //le pourcentage de miniaturisation (vous bien sur agrandir l'image avec 150, 200, 500... attention à la lenteur !) )); ?>
Édité
le 09/03/2007 à 00:47:14
par GuGus963
Wikipédia, encyclopédie libre (anglais) Wiktionnaire, dictionnaire libre (anglais) FSF : Free Software Foundation || GNU : GNU's not UNIX Ubuntu, Linux for Human Beings || Gentoo Linux || OpenBSD : Free, Functional & Secure || Debian ![]() |
A-spec59
|
# Posté le 09/03/2007 à 01:04:09 |
Réfléchissez !![]() Groupe : Membres |
NL => Ravi de t'avoir appris quelque chose, à vrai dire je ne connaissais pas non plus avant, mais il me semblait déjà avoir vu cette fonction quelque part. Apparemment on ne peux pas définir l'ordre de tri, mais inversé les résultats ne doit pas être bien dur (de là à en faire une fonction, je sais pas si c'est nécessaire)
Edit : pour inverser le tableau mais en gardant la correspondance clé/valeur : krsort
Édité
le 09/03/2007 à 01:05:53
par A-spec59
Green Searches, 1ère bêta. Pourquoi faire des recherches de façon écologique devrait-il se réduire à des recherches web. Green Searches vous permet aussi de faire des recherches d'images, de vidéos (à venir), de livres, dans les actualités .... Je cherche des petit trucs à faire contre petite rémunération (traduction, codage de script, graphisme, ... ) Plus de détails => me contacter What I can do |
DHKold
|
# Posté le 09/03/2007 à 01:39:55 |
Ex-Admin![]() Groupe : Membres |
A-spec59 > Euh non, krsort, ca trie un tableau dans l'ordre inverse, !== renverser un tableau
Pour renverser un tableau: array_reverse |
GuGus963
|
# Posté le 09/03/2007 à 02:05:14 |
Pour la connaissance libre !![]() Groupe : Membres |
Mon nouveau format d'image : j'ai nommé le format PXC (PiXel Color).
(interdit de se moquer ).
Code : PHP function imagecreatefrompxc($filename) {
$pxcContent = file_get_contents($filename); if($pxcContent[0] == '0') { $pxcContent = substr($pxcContent, 1); $pxcContent = bzDecompress($pxcContent); } $separator = $pxcContent[0]; $pxcContent = substr($pxcContent, 1); $pxcContent = explode("\n", $pxcContent); list($xMax, $pxcContent[0]) = explode($separator, $pxcContent[0], 2); $base = (ord($separator) > 57) ? abs(ord('a')-ord($separator)-10) : $separator; $xMax = base_convert($xMax, $base, 10); $yMax = count($pxcContent); $image = imagecreatetruecolor($xMax, $yMax); for($y=0; $y<$yMax; $y++) { $pxcContent[$y] = explode($separator, $pxcContent[$y]); for($x=0; $x<$xMax; $x++) { $rgb = base_convert($pxcContent[$y][$x], $base, 10); $r = ($rgb >> 16) & 0xFF; $g = ($rgb >> 8) & 0xFF; $b = $rgb & 0xFF; $id = imagecolorallocate($image, $r, $g, $b); imagesetpixel($image, $x, $y, $id); imagecolordeallocate($image, $id); } } return $image; } function imagepxc($image, $filename = null, $base = 35, $compress = false) { //$base c'est l'encodage pour les couleurs rvb. Mettre 2, ça va donner un gros fichier, en binaire, et mettre 35 un plus petit fichier. Je conseille 35 (c'est le max). $base = (int) $base; $xMax = imagesx($image); $yMax = imagesy($image); $separator = ($base > 9) ? chr(ord('a')+($base-10)) : $base; $pxcContent = array(); for($y=0; $y<$yMax; $y++) { $pxcContent[$y] = array(); for($x=0; $x<$xMax; $x++) { $pxcContent[$y][$x] = base_convert(imagecolorat($image, $x, $y), 10, $base); } $pxcContent[$y] = implode($separator, $pxcContent[$y]); } $pxcContent = $separator.base_convert($xMax, 10, $base).$separator.implode("\n", $pxcContent); //on compresse le fichier if($compress !== false && is_int($compress)) $pxcContent = '0'.bzCompress($pxcContent, $compress); if($filename === null) { return $pxcContent; } else { $bool = ($f = fopen($filename, 'w+')) ? true : false; fwrite($f, $pxcContent); fclose($f); return $bool; } } Code : Autre Une image PXC compressée contient :
* le chiffre '0', * la compression bz de { ___* le séparateur, ___* la largeur de l'image, ___* la couleur du pixel 1;1, ___* le séparateur, ___* la couleur du pixel 1;dernier, ___* retour à la ligne ___* la couleur du pixel 2;1, ___* le séparateur, ___* la couleur du pixel 2;dernier, ___* etc } Une image PXC non compressée contient : * le séparateur, * la largeur de l'image, * la couleur du pixel 1;1, * le séparateur, * la couleur du pixel 1;dernier, * retour à la ligne * la couleur du pixel 2;1, * le séparateur, * la couleur du pixel 2;dernier, * etc Lorsqu'on enregistre une image PXC, on choisit (facultativement) la base d'encodage, de 2 (binaire) à 35 (triquinquénaire :X) et également le taux de compressage par l'alorithme de compression Bzip2. (ou on met false, par défaut). Cette base se traduit par un délimiteur (ou séparateur) : base 2, délimiteur = 2, base 7, délimiteur = 7, base 10, délimiteur = a, base 13, délimiteur = d, base 27, délimiteur = r, base 35, délimiteur = z, [etc] Choisir une petite base (2) entrainera un gros fichier au final. un fichier image de 2x2, avec comme pixels : vert | noir noir | vert entrainera ceci avec l'encodage en base 2 : 2102111111110000000020 021111111100000000 -> le délimiteur (2), la largeur de l'image (10 = 2 en decimal), puis le délimiteur, et enfin le pixel 0;0 ... etc entrainera ceci avec l'encodage en base 15 : f2f14520f0 0f14520 -> le delimiteur (f), la largeur de l'image (2 = 2 en decimal), puis le délimiteur, et enfin le pixel 0;0 ... etc entrainera ceci avec l'encodage en base 35 : z2z1ia5z0 0z1ia5 -> le délimiteur (z), la largeur de l'image (2 = 2 en decimal), puis le delimiteur, et enfin le pixel 0;0 ... etc On voit que l'encodage en base 35 prend moins de stockage. Il faut l'extension "Compression Bzip2" de php pour compresser, mais vous n'êtes pas obligé de compresser l'image... Un p'tit lien PS : je suis conscient que ce format est nul, je l'ai développé pour m'amuser. (avant qu'on m'insulte ).
Édité
le 09/03/2007 à 02:08:32
par GuGus963
Wikipédia, encyclopédie libre (anglais) Wiktionnaire, dictionnaire libre (anglais) FSF : Free Software Foundation || GNU : GNU's not UNIX Ubuntu, Linux for Human Beings || Gentoo Linux || OpenBSD : Free, Functional & Secure || Debian ![]() |
DHKold
|
# Posté le 09/03/2007 à 02:32:30 |
Ex-Admin![]() Groupe : Membres |
woaw, ca doit être encore plus lent que ma fonction qui ouvre un bitmap
Bon, aller, voilà ce que tu modifie: - Arrête d'écrire en text-plein, utilise chaque octet comme un octet de 256 possibilités, pas comme un caractère. -Le délimiteur est obsolète. Tu fixe un nombre donnée de bits/octets par pixel à la place. -Défini clairement un entete, du genre, le fichier commence par 'PXC', puis la version sur 1 octet, suivit de la largeur sur 2 octets, suivit de la hauteur sur 2 octets, suivit du nombre de bits/couleurs, sur 1 octet, suivit de la taille de la palette sur 1 octets, etc... et tu aurra un début de bitmap
|
GuGus963
|
# Posté le 09/03/2007 à 02:36:31 |
Pour la connaissance libre !![]() Groupe : Membres |
Ahhhhh ouais pas con
Merci
Sinon, tu as réussi à ouvrir un fichier bitmap .bmp ? avec les fonctions de gd ? EDIT : Citation : dhkold Arrête d'écrire en text-plein, utilise chaque octet comme un octet de 256 possibilités, pas comme un caractère.
Pas compris
RE-EDIT : Le problème, c'est que s'il n'y a pas de delimiteur, je serai obligé de transformer la couleur noire (0) en plusieurs 0, suivant l'encodage... une image contenant un fond noir seulement, serait donc plus grosse qu'une image avec un délimiteur. Mais bon. En tout cas, j'aurai besoin de str_split().
Édité
le 09/03/2007 à 02:42:28
par GuGus963
Wikipédia, encyclopédie libre (anglais) Wiktionnaire, dictionnaire libre (anglais) FSF : Free Software Foundation || GNU : GNU's not UNIX Ubuntu, Linux for Human Beings || Gentoo Linux || OpenBSD : Free, Functional & Secure || Debian ![]() |
NL
|
# Posté le 09/03/2007 à 02:40:07 |
![]() Groupe : Membres |
Toujours pour une réorganisation d'un array, mais sur un array multidimensionnel (bon, ça fonctionne, mais y a peut-être mieux à faire, j'ai pas trop cherché ^^')
Code : PHP function trie_array($tableau, $ordre)
{ if($ordre == 'asc') $tri = SORT_ASC; else $tri = SORT_DESC; $tableau_cle = $tableau_element = $tableau_final = array(); foreach($tableau as $cle => $element) { $tableau_cle[$cle] = $cle; // On recrée la valeur du tableau global // Tri de chaque sous-tableau $tableau_element[$cle] = $element; $tableau_min_element = array_map('strtolower', $tableau_element[$cle]); array_multisort($tableau_min_element, $tri, SORT_STRING, $tableau_element[$cle]); } // On tri le tableau général $tableau_min_cle = array_map('strtolower', $tableau_cle); array_multisort($tableau_min_cle, $tri, SORT_STRING, $tableau_cle); // On fusionne les deux tableaux $tableau_final = array_merge($tableau_cle, $tableau_element); return $tableau_final; } Exemple : Code : PHP $tableau = array('Damien' => array('bidule', 'machin'), 'albatros' => array('bidule', 'machin'), 'Bernard' => array('bidule', 'machin'), 'chien' => array('bidule', 'machin'));
$tableau = trie_array($tableau, 'desc'); echo '<pre>'; print_r($tableau); echo '</pre>'; Renvoie : Code : Autre Array
( [Damien] => Array ( [0] => machin [1] => bidule ) [chien] => Array ( [0] => machin [1] => bidule ) [Bernard] => Array ( [0] => machin [1] => bidule ) [albatros] => Array ( [0] => machin [1] => bidule ) ) Ca réorganise tous les arrays selon l'ordre défini. J'ai pas vraiment d'idées où ça pourrait servir
Édité
le 09/03/2007 à 02:42:13
par NL
|
GuGus963
|
# Posté le 09/03/2007 à 02:51:17 |
Pour la connaissance libre !![]() Groupe : Membres |
Citation : GuGus963
Citation : dhkold
Arrête d'écrire en text-plein, utilise chaque octet comme un octet de 256 possibilités, pas comme un caractère.
Pas compris ![]() Ah, j'ai compris, je crois. Par exemple, si $rouge = 132, alors j'enregistre avec chr($rouge) ?
Wikipédia, encyclopédie libre (anglais) Wiktionnaire, dictionnaire libre (anglais) FSF : Free Software Foundation || GNU : GNU's not UNIX Ubuntu, Linux for Human Beings || Gentoo Linux || OpenBSD : Free, Functional & Secure || Debian ![]() |
DHKold
|
# Posté le 09/03/2007 à 02:55:25 |
Ex-Admin![]() Groupe : Membres |
Citation : GuGus963
Sinon, tu as réussi à ouvrir un fichier bitmap .bmp ? avec les fonctions de gd ?
http://be2.php.net/manual/fr/function.imagecreate.php#53879
pour le chr(...), oui, mais le mieux est d'utiliser pack et unpack
Édité
le 09/03/2007 à 02:55:54
par DHKold
|
GuGus963
|
# Posté le 09/03/2007 à 03:03:08 |
Pour la connaissance libre !![]() Groupe : Membres |
Citation : DHKold
Citation : GuGus963
Sinon, tu as réussi à ouvrir un fichier bitmap .bmp ? avec les fonctions de gd ?
http://be2.php.net/manual/fr/function.imagecreate.php#53879
pour le chr(...), oui, mais le mieux est d'utiliser pack et unpack ![]() Alors d'abord gros bravo pour ta fonction C'est superbe ! (enfin je comprends pas tout, vas falloir que je déchiffre ^^).
Sinon, j'avais déjà regardé les fonction pack et unpack, mais sans y faire bien attention. Je vais regarder tout ça, et je verrai demain
Merci encore
EDIT Bon bah, j'y comprends rien
Enfin, les résultats renvoyés par pack() me semblent bien aléatoire. (oui j'ai lu, relu et re-relu la doc). En attendant j'enrichis avec une petite fonction toute bête : Code : PHP function eraseAll($dir) {
if($dir[strlen($dir)-1] != '/') $dir .= '/'; $open = opendir($dir); while($file = readdir($open)) { if($file != '..' && $file != '.') { if(is_file($dir.$file)) @unlink($dir.$file); elseif(is_dir($dir.$file)) eraseAll($dir.$file); } } closedir($open); @rmdir($dir); } Elle est récursive. Que vous essayiez de supprimer un dossier qui en contient 100 autres ne la genera donc pas Voilà, à moi ça m'est utile, quand j'ai plein de fichiers à supprimer sur mon compte free par exemple, et comme avec filezilla ça va à 2 à l'heure...
Bye
Édité
le 09/03/2007 à 13:52:36
par GuGus963
Wikipédia, encyclopédie libre (anglais) Wiktionnaire, dictionnaire libre (anglais) FSF : Free Software Foundation || GNU : GNU's not UNIX Ubuntu, Linux for Human Beings || Gentoo Linux || OpenBSD : Free, Functional & Secure || Debian ![]() |
sansamis
|
# Posté le 25/03/2007 à 23:39:15 |
J'en ai marre d'en avoir marre![]() Groupe : Membres |
AstuceAuteur: sansamis (c'est moi )
Type: Astuce But: Afficher simplement des fraction sur sons site Code: Code : PHP <?php // Comment utiliser ce code? // Ce code doit être enregistré sous le nom de fichier "fraction.php" (et non pas ".htm" ou ".html"). // Ce code génère l'image d'une fraction. // On affiche l'image comme ceci : <img border="no" src="fraction.php?numerateur=nombre_au_numerateur&denominateur=nombre_au_denominateur"> // Vous remplacez "nombre_au_numerateur" et "nombre_au_denominateur" par c e que vous voulez. // Attention : pour afficher le signe plus, il ne faut pas mêttre "+" mais "%2B". // Exemple : <img border="no" src="fraction.php?numerateur=3%2BX&denominateur=124"> // Mon conseil : Pour que la fraction soit bien affichée (centrée sur la ligne), ajouter ce style à l'image : // margin-bottom: -7px; // Créé et optimlisé par sansamis | contact@sansamis.fr header ("Content-type: image/png"); // On retourne le format de l'image générée. $nb1 = stripslashes(htmlentities($_GET['numerateur'])); // On récupert le chiffre (ou les lettres, ou les 2) du numérateur (avec htmlentities pour éviter le hack)... |
