Hello,

Thanks for your answer!

You say that sscanf is doing it's job, so the documentation isn't very
clear.
I think it says that the format is equal to sprintf. And sprintf has %010d
in format that says that a var is a number with at least 10 digits, filled
with 0's. So I think that sscanf should do the job!


Nuno Lopes



----- Original Message ----- 
From: "Catalin Trifu" <[EMAIL PROTECTED]>
To: <[EMAIL PROTECTED]>
Sent: Sunday, September 07, 2003 5:51 PM
Subject: [PHP] Re: sscanf error?


>         Hi,
>
>     sscanf does what it says, that is
> it reads parameters, which means it expects to find
> a string like this "33996344" and converts it
> into an integer; that's why you get the result you get.
>     This code does the job, but it's ugly: :).
>
> <?php
> $db='33996344,33996351,"GB","GBR","UNITED KINGDOM"
> 50331648,83886079,"US","USA","UNITED STATES"
> 94585424,94585439,"SE","SWE","SWEDEN"';
>
> $lines=explode("\n", $db);
>
> echo "<pre>";
> print_r($lines);
>
>
> foreach ($lines as $line) {
>  $args = explode(",", $line);
>  $array = sprintf("%010d,%010d,%2s", $args[0], $args[1], $args[2]);
>  $array = explode(",", $array);
>  list ($start, $end, $country) = $array;
>  print_r($array);
> }
>
> print_r(printf("%010d", "33996344"));
> echo "</pre>";
>
> ?>
>     It uses sprintf.
>
> Cheers,
> Catalin
>
> "Nuno Lopes" <[EMAIL PROTECTED]> wrote in message
> news:[EMAIL PROTECTED]
> > Hello,
> >
> > I'm trying to use sscanf, but I'm not receiving the results I expected!
> Can
> > anybody help me, please?
> >
> >
> > Thanking in advance,
> > Nuno Lopes
> >
> >
> > /************************************************/
> > <?
> > $db='"33996344","33996351","GB","GBR","UNITED KINGDOM"
> > "50331648","83886079","US","USA","UNITED STATES"
> > "94585424","94585439","SE","SWE","SWEDEN"';
> >
> > $lines=explode("\n", $db);
> >
> > foreach ($lines as $line) {
> > $array=sscanf($line, "\"%010d\",\"%010d\",\"%2s");
> > list ($start, $end, $country) = $array;
> > print_r($array);
> > }
> > ?>
> > /******************************/
> > Output:
> > Array
> > (
> >     [0] => 33996344
> >     [1] => 33996351
> >     [2] => GB
> > )
> > ....
> > /****************/
> > Expected output:
> > Array
> > (
> >     [0] => 0033996344
> >     [1] => 0033996351
> >     [2] => GB
> > )

-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to