Les chaines de caractères vous connaissez??? [php] - Programmation
Marsh Posté le 11-04-2001 à 18:11:15
T'es vraiment nul...
Moi j'aurai reussi, ou demande a guibout de te voler un source.
Marsh Posté le 11-04-2001 à 18:28:30
bah c'est facile si tes coordonnées ont toujours la même forme, soit 3 caractères avant et après la virgule, sinon c'est pô possible
Marsh Posté le 12-04-2001 à 08:56:52
duch a écrit a écrit : bah c'est facile si tes coordonnées ont toujours la même forme, soit 3 caractères avant et après la virgule, sinon c'est pô possible |
Comment tu fait alors?
Le problème c'est qu'il faut que j'insère une virgule tous les 8 caractères:
ex 148.142365.145789.145 =>148.142,365.145,789.145
Comment faire? Je débute en php et je vois pas?
Marsh Posté le 12-04-2001 à 11:12:19
<?php
function test($chaine)
{
for($i=7;$i<strlen($chaine);$i+=8)
$chaine=substr($chaine,0,$i).','.substr($chaine,$i,strlen($chaine));
return $chaine;
}
echo test("148.142365.145789.145" );
?>
Marsh Posté le 12-04-2001 à 11:36:02
Un autre sript pour sortir tes coordonnées :
<?php
$var = "148.142365.145789.145";
$tab = explode(".",$var);
$sz_tab = sizeof($tab);
$k = 0;
While($k<=($sz_tab-2))
{
if($k==0)
{
$coord[$k] = $tab[$k].",".substr($tab[$k+1], -6, 3);
echo "$coord[$k]<br>";
}
if($k!=0 && $k!=($sz_tab-2))
{
$coord[$k] = substr($tab[$k], -3, 3).",".substr($tab[$k+1], -6, 3);
echo "$coord[$k]<br>";
}
if($k==($sz_tab - 2))
{
$coord[$k] = substr($tab[$k], -3, 3).",".$tab[$k+1];
echo "$coord[$k]<br>";
}
$k++;
}
?>
Tes coordonnées sont stockées dans un tableau sous la forme :
$coord[$i] = x(i),y(i);
C'est plus long que le code de Roswell_, mais c'est pas dure de l'optimiser !!!
Marsh Posté le 12-04-2001 à 11:42:50
Finalement, le code de Roswell_ est mieux, laisse tomber ce que j'ai fait, Glurps...
Marsh Posté le 12-04-2001 à 13:22:56
En fait, je me demande bien quel est le code qui va s'exécuter le plus rapidement. Il faudrait que je teste cela, c'est pas dit que la boucle FOR soit plus rapide, bien au contraire...
Oups, j'ai pas le temps de tester, si quelqu'un veux s'en donner la peine en faisant un petit compteur et en bouclant un bon millier de foi sur chaque code...
AlleZ, C'ya
Marsh Posté le 11-04-2001 à 18:09:38
J'ai une chaîne sous la forme :
ex: 148.142365.145789.145
En fait ce sont des coordonnées :
148,142
365,145
789,145
Je dois donc insérer une virgule entre 142 et 365 puis entre 145 et 789.
Je trouve pas de fonctions appropiées ni de solutions correctes!
Please HELP!