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 ... 72 73 74 75 76 77 78 ... 97 98 99 100 Suivante | |
| Auteur | Message |
|---|---|
| 1 visiteur sur ce sujet (1 anonyme) | |
| Page : Précédente 1 2 3 ... 72 73 74 75 76 77 78 ... 97 98 99 100 Suivante | |
Bilbax
|
# Posté le 29/02/2008 à 22:33:17 |
www.bilbax.eu![]() Groupe : Membres |
Reprise du dernier message de la page précédente :
`Haku > Comment tu expliques que faireCode : PHP - Afficher / masquer les numéros de ligne
Donne AB alors que AA n'est pas un caractère (mais bien deux) ?
|
anonyme
|
# Posté le 29/02/2008 à 22:36:19 |
|
Groupe : |
PHP est très opaque sur l'inférence et sa gestion des types.
Dans un langage fortement typé comme le java, ce que tu as écrit là ne fonctionnerait pas. Donc je ne sais pas te dire pourquoi ce code fait ce qu'il fait.
|
Savageman
|
# Posté le 29/02/2008 à 22:42:30 |
Insa : If inside![]() Groupe : Membres |
Encore (AA++ == AB) j'arrive plus ou moins comprendre la logique, mais (Z++ == AA), là je suis complètement largué
|
anonyme
|
# Posté le 29/02/2008 à 22:44:39 |
|
Groupe : |
Y a même pas de type char pour nous en PHP, var_dump('a') retourne string(1) "a".
Y a pleins de points précis assez obscurs en PHP. Citation : Savageman Encore (AA++ == AB) j'arrive plus ou moins comprendre la logique, mais (Z++ == AA), là je suis complètement largué ![]() Bah en fait c'est plutôt le AA++ = AB qui est étrange. ord(A) -> 65 ord(AA) -> 65 ord(AB) -> 65 Donc on penserait que ord() ne tient compte que du premier caractère. ord(AA+1) -> 66 Ca appuie l'idée précédente. Mais là ça devient bizarre : ord(Z) -> 90 ord(Z+1) -> 49 (chr(49) -> 1)
|
flioux
|
# Posté le 29/02/2008 à 22:54:37 |
IUTiste![]() Groupe : Membres |
Perso je trouve ça logique.
A,B,...,Y,Z,AA,AB,...,AY,AZ,BA,BB,... Je vois ça comme ça! A+ Bientôt : iutdijon.eu iutinfo.eu |
Savageman
|
# Posté le 29/02/2008 à 22:57:13 |
Insa : If inside![]() Groupe : Membres |
Si 'AA' est une chaîne de deux entiers, alors elle est représenté numériquement par (65 65) dans la mémoire. Faire un ++ revient à augmenter la valeur dans la mémoire de 1 (enfin, en PHP c'est vachement plus compliqué apparement), donc (65 65)++ deviendrait (65 66), soit 'AB' dans une certaine logique.
Pour le Z, le mystère est entier
|
Cortexd
|
# Posté le 29/02/2008 à 22:57:45 |
Maouunnwww !![]() Groupe : Membres |
c'est vaguement expliqué ici : http://fr.php.net/manual/fr/language.operators.increment.php
sinon pour générer des lettres on peut aussi faire : range('a', 'z'); |
manene
|
# Posté le 01/03/2008 à 14:12:48 |
Mens sana in corpore sano !![]() Groupe : Membres |
Citation : Bilbax
Code : PHP - Afficher / masquer les numéros de ligne Moi, j'aurais fait : Code : PHP - Afficher / masquer les numéros de ligne
Sinon, je ne savais pas non plus pour le A, B, ... Z, AA, AB, ... C'est effectivement assez intéressant... et bizarre ! Cordialement, manene. |
JeromeJ
|
# Posté le 02/03/2008 à 02:28:53 |
![]() Groupe : Membres |
Un array_map qui accepte d'autre arguments que des array:
Code : PHP - Afficher / masquer les numéros de ligne
![]() Ainsi qu'un array_rand récursif (mais qui retourne la valeur et non l'index parcontre): Code : PHP - Afficher / masquer les numéros de ligne
Édité
le 02/03/2008 à 05:19:37
par JeromeJ
Secret (cliquez pour afficher) Ce que je maitrise actuellement: XHTML, CSS, PHP, Action Script 2 et 3, JavaScript, SQL, Python, et un peu de C, C++ et d'erl |
strucky
|
# Posté le 02/03/2008 à 11:28:15 |
Jamais content !![]() ![]() |
Citation : JeromeJ
Si vous avez des questions ou que vous avez mieux, faites savoir. Merci Oui, elle sert à quoi ta fonction ? Perso, j'ai pas bien compris son but. Ensuite un array_rand() récursif, ça pourrait servir à quoi ?
Édité
le 02/03/2008 à 13:51:05
par strucky
|
Talus
|
# Posté le 02/03/2008 à 13:17:28 |
タルス![]() Groupe : Membres |
Je me le demande aussi. Surtout que la première fonction, ben... Si c'est pas un array, autant appliquer la fonction directement
|
Caim
|
# Posté le 02/03/2008 à 14:06:56 |
|
Groupe : Membres |
Auteur: Caim
Type: Formatage de données But: Remplacer des mots connus par des liens Code: Code : PHP - Afficher / masquer les numéros de ligne
Consigne:Il faut créer une table [du nom que vous voulez] et il faut qu'elle posséde un champs "mot" contenant tous les mots qui doivent être transformer en lien Et compléter les commentaires Citation : Rendu Il faudrais trouver un nom plus aproprié a la fonction, et peut être l'optimiser(je sais pas) |
JaKhris
|
# Posté le 02/03/2008 à 14:16:16 |
Wait & See![]() Groupe : Membres |
J'aurai plus fait comme ça (et c'est pas super optimisé encore
) :Code : PHP - Afficher / masquer les numéros de ligne
M'enfin je sais pas trop, cette fonction pour ma part ne pourrait pas m'être utile, et je comprends pas l'utilisation du str_replace sur les virgules et points. ![]() Et même, pourquoi pas fait ça hors-fonction, la connexion MySQL ?
Édité
le 02/03/2008 à 14:57:42
par JaKhris
Mes sites : JAKPRO ~ URPRO ~ page Flickr XHTML, CSS, JS, PHP, MySQL, Graphics, Music & Video Games : This is living ! =D |
JeromeJ
|
# Posté le 02/03/2008 à 14:21:04 |
![]() Groupe : Membres |
Citation : strucky
Citation : JeromeJ Pour l'array_map, si on veut appliquer une fonction et passer d'autre paramètre que des array ça fonctionne pas. Or ce n'est pas possible; avec la mienne oui. J'y ai de plus ajouter un délimiteur avec 3 options (MAX, MIN ou personalisé) agissant comme tel:Si vous avez des questions ou que vous avez mieux, faites savoir. Merci Oui, elle sert à quoi ta fonction ? Perso, j'ai pas bien compris son but. Ensuite un array_rand() récursif, ça pourrait servir à quoi ? Exemple: Prenons $arg0 = array(1, 2, 3, 4, 5) et $arg1 = array(1, 2, 3), $arg2 = n'importe quel valeur autre qu'un array - $arg0[0], $arg1[0] et $arg2 seront traités - $arg0[1], $arg1[1] et $arg2 ... - $arg0[2], $arg1[2] et $arg2 ... Si l'option MIN est activée, alors on s'arrête ici. Sinon ... - $arg0[3], $arg1[2] et $arg2 ... - $arg0[4], $arg1[2] et $arg2 ... Pour array_rand_r, Exemple: Code : PHP - Afficher / masquer les numéros de ligne
@Caim et JaKhris: Tiens je savais pas que str_replace passait en référence (à part son quatrième argument $count)
Édité
le 02/03/2008 à 14:26:22
par JeromeJ
Secret (cliquez pour afficher) Ce que je maitrise actuellement: XHTML, CSS, PHP, Action Script 2 et 3, JavaScript, SQL, Python, et un peu de C, C++ et d'erl |
strucky
|
# Posté le 02/03/2008 à 15:27:00 |
Jamais content !![]() ![]() |
J'ai toujours pas compris malgré tes explications à quoi sert ta fonction
Je dois vraiment être con :/ |
Talus
|
# Posté le 02/03/2008 à 15:37:47 |
タルス![]() Groupe : Membres |
Surtout, ce que je demande à voir, c'est si tu veux choisir plusieurs clés aléatoirement
![]() @strucky > En fait, je t'avouerais que t'es pas le seul. |
JeromeJ
|
# Posté le 02/03/2008 à 17:36:35 |
![]() Groupe : Membres |
@strucky, bah tu n'as jamais utilisé array_map ? Elle permet d'effectuer une fonction sur chaque élément des tableaux donnés: ça fonctionne comme ceci: si on met array_map('machin', $array, $array2) pou chaque élement on aura ça machin($array[0], $array[1]) etc. Mais si je veux effectuer une fonction et lui donner des paramètres autre que des array redistribué dynamiquement ? array_map('str_replace', 'XY' 'XX', $array) ne fonctionne pas... Avec ma fonction si.
@Talus: Euh Oo j'vois pas où est le prob ... il renvoit un tableau de valeur au lieu d'une seule ^^' Secret (cliquez pour afficher) Ce que je maitrise actuellement: XHTML, CSS, PHP, Action Script 2 et 3, JavaScript, SQL, Python, et un peu de C, C++ et d'erl |
Talus
|
# Posté le 02/03/2008 à 17:42:30 |
タルス![]() Groupe : Membres |
Justement : Ou est l'interet de faire un array_map sur des chaines de caracères, alors que l'appel de la fonction suffit ?
Au pire, faire un array_map récursif (je crois que y'en a déjà eu un), et le faire sur func_get_args...
Édité
le 02/03/2008 à 17:43:04
par Talus
|
strucky
|
# Posté le 02/03/2008 à 18:08:48 |
Jamais content !![]() ![]() |
Citation : JeromeJ
@strucky, bah tu n'as jamais utilisé array_map ? Elle permet d'effectuer une fonction sur chaque élément des tableaux donnés: ça fonctionne comme ceci: si on met array_map('machin', $array, $array2) pou chaque élement on aura ça machin($array[0], $array[1]) etc. Mais si je veux effectuer une fonction et lui donner des paramètres autre que des array redistribué dynamiquement ? array_map('str_replace', 'XY' 'XX', $array) ne fonctionne pas... Avec ma fonction si. @Talus: Euh Oo j'vois pas où est le prob ... il renvoit un tableau de valeur au lieu d'une seule ^^' Eh si je sais à quoi sert un array_map() ou array_walk() Mais comme dit Talus, à quoi ça sert d'utiliser une fonction de tableaux sur une chaîne ? Vraiment, je vois pas du tout . |
JeromeJ
|
# Posté le 02/03/2008 à 18:35:34 |
![]() Groupe : Membres |
Euh je comprend pas bien ce que vous venez d'me sortir là O_O' Serait-ce à cause de l'exemple que j'ai pris ? =/
@Talus: le mien n'est pas fais avec func_get_args ? =) Secret (cliquez pour afficher) Ce que je maitrise actuellement: XHTML, CSS, PHP, Action Script 2 et 3, JavaScript, SQL, Python, et un peu de C, C++ et d'erl |
DHKold
|
# Posté le 06/03/2008 à 01:48:31 |
Ex-Admin![]() Groupe : Membres |
On peut aisément faire plus simple:
Code : PHP - Afficher / masquer les numéros de ligne
Et si vraiment tu veux utiliser tes MIN et MAX machin, tu utilise un array_slice()
|
Dentuk
|
# Posté le 09/03/2008 à 16:40:13 |
Yamo...![]() Groupe : Membres |
array_map a été faite pour pouvoir être utilisée avec des fonctions utilisateur : pour moi c'est beaucoup plus clair et simple de faire ça (par exemple):
Code : PHP - Afficher / masquer les numéros de ligne
Édité
le 09/03/2008 à 16:41:46
par Dentuk
|
Cortexd
|
# Posté le 09/03/2008 à 16:50:21 |
Maouunnwww !![]() Groupe : Membres |
str_replace() fonctionne aussi avec des tableaux, tu peux écrire :
Code : PHP - Afficher / masquer les numéros de ligne
|
Dentuk
|
# Posté le 09/03/2008 à 17:07:14 |
Yamo...![]() Groupe : Membres |
Citation : Cortexd
str_replace() fonctionne aussi avec des tableaux, tu peux écrire : Ah ouais tiens je savais même pas. Code : PHP - Afficher / masquer les numéros de ligne
![]() Enfin c'était qu'un exemple. |
Neoterranos
|
# Posté le 16/03/2008 à 03:15:38 |
Oh my god, they killed Kenny !![]() Groupe : Membres |
bbcode couleurs, utiliser des noms français avec un array :
Merci à Strucky qui, à l'époque, m'avait donné la fonction nécessaire et utile pour faire marcher ce code : preg_replace_callback Code : PHP - Afficher / masquer les numéros de ligne
Exemple : Code : PHP - Afficher / masquer les numéros de ligne
Retournera normalement (la dernière fois que je l'ai testée ça marchait !!) : Citation : - Je teste les Couleurs
Édité
le 16/03/2008 à 03:16:40
par Neoterranos
|
Talus
|
# Posté le 16/03/2008 à 11:31:52 |
タルス![]() Groupe : Membres |
Vaut mieux une classe CSS (couleur_rouge par exemple), comm, ca pas d'emmerdements à faire un callback
|
Neoterranos
|
# Posté le 16/03/2008 à 15:30:14 |
Oh my god, they killed Kenny !![]() Groupe : Membres |
|
Talus
|
# Posté le 16/03/2008 à 15:46:27 |
タルス![]() Groupe : Membres |
Code : CSS - Afficher / masquer les numéros de ligne
Code : PHP - Afficher / masquer les numéros de ligne
Tout bêtement... Si la couleur existe pas, ce sera en noir
|
Neoterranos
|
# Posté le 16/03/2008 à 15:55:59 |
Oh my god, they killed Kenny !![]() Groupe : Membres |
|
shine-neko
|
# Posté le 16/03/2008 à 15:58:06 |
Saite ita no wa My Rosy Heart![]() Groupe : Membres |
Citation : Neoterranos
Je suis pas réveillé je l'avoue ça paraît assez évident, mais je vais benchmarker pour voir si y a une réelle différence (hormis celle du CSS plus gros dans un cas)La difference c'est que c'est moins lourd et plus facile de rajouter des couleurs La v3 de Shine-Shiina est sortit Qui n'a jamais rêver d'apprendre a dessiner , Cuisiné japonnais dévorer de nouveaux manga fait par des copains et d'apprendre le japonais ? => La réponse se trouve ici |
Neoterranos
|
# Posté le 16/03/2008 à 16:29:17 |
Oh my god, they killed Kenny !![]() Groupe : Membres |
Si tu sais pas modifier un array, c'est ton problème.
Malgré tout, je me plie, la solution de Talus, à laquelle je n'avais pas pensé prend deux fois moins de temps que la mienne, 1,8 sec pour 100000 passages contre 3.5 pour la mienne. Merci Talus, j'ai parlé trop vite. |
Retour au forum "PHP" ou à la liste des forums
Vous devez être inscrit pour pouvoir poster des messages
Changer de design |
En savoir plus |
Plan du site |
Politique d'accessibilité |
Règles |
RSS tutoriels |
RSS news
Édité par Simple IT SARL :
Nous contacter
| Notre blog | Revue de presse | Publicité
Y'a plus rien à lire, faut remonter maintenant !
Hébergement web - Correction de tutoriels - Créer un site
Vous souhaitez apparaître ici ? Contactez-nous.
93 Zéros connectés |
7 requêtes |
0.1155s (0.0958s)
