Computer Webmaster Gaming Console Graphics Forum

Welcome to the Computer Webmaster Gaming Console Graphics Forum forums.

You are currently viewing our boards as a guest which gives you limited access to view most discussions and access our other features. By joining our free community you will have access to post topics, communicate privately with other members (PM), respond to polls, upload content and access many other special features. Registration is fast, simple and absolutely free so please, join our community today!

If you have any problems with the registration process or your account login, please contact contact us.

MK PitStop Main Earn $25 Earn Money Posting Extras Members Blogs Image Hosting User Pages
Go Back   Computer Webmaster Gaming Console Graphics Forum > Webmaster Forum > Website Coding > PHP
Register FAQ/Rules Become A V.I.P. Member Search Today's Posts Mark Forums Read

PHP PHP for some can be one of the hardest website programming codes, so do you need help on your PHP script, if it is php4, php5 or lower this is the place for you for any PHP help.

Google
Closed Thread
 
LinkBack Thread Tools Display Modes
Old 07-01-2007, 5:27 PM   #1
Marc
 
Marc's Avatar
 
Posts: n/a
My Photos: (0)

Banked:
MK Cash: $

I am Worth:
MK Cash: $
Donate

Recent Blog: None

Default finding last digit

How do I find the last digit of a number and output text accordingly? This
is the code I'm trying to use, but isn't working:

function ending() {
$count_digits = preg_split('//', $result->hit_count, -1,
PREG_SPLIT_NO_EMPTY);
$count_len = strlen($result->hit_count);
$count_end_digit = $count_digits[$count_len--];
if ($count_end_digit == 1) {print "st";}
elseif ($count_end_digit == 2) {print "nd";}
elseif ($count_end_digit == 3) {print "rd";}
else {print "th";}
}

I call it later with print "You are the" . $result->hit_count . ending()
.. " visitor";

$result->hit_count is a variable I created for getting the value from a
MySQL database. I can easily output the number, so the variable isn't the
problem. What is?


 
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit!
Advertisements
Old 07-01-2007, 5:27 PM   #2
Tom Thackrey
 
Tom Thackrey's Avatar
 
Posts: n/a
My Photos: (0)

Banked:
MK Cash: $

I am Worth:
MK Cash: $
Donate

Recent Blog: None

Default finding last digit



On 27-Aug-2003, "Marc" <marb291@hotmail.com> wrote:

> How do I find the last digit of a number and output text accordingly? This
> is the code I'm trying to use, but isn't working:
>
> function ending() {
> $count_digits = preg_split('//', $result->hit_count, -1,
> PREG_SPLIT_NO_EMPTY);
> $count_len = strlen($result->hit_count);
> $count_end_digit = $count_digits[$count_len--];
> if ($count_end_digit == 1) {print "st";}
> elseif ($count_end_digit == 2) {print "nd";}
> elseif ($count_end_digit == 3) {print "rd";}
> else {print "th";}
> }
>
> I call it later with print "You are the" . $result->hit_count .
> ending()
> . " visitor";
>
> $result->hit_count is a variable I created for getting the value from a
> MySQL database. I can easily output the number, so the variable isn't the
> problem. What is?


Among other things $result is out of scope in ending()
Try:
function ending($s)
{
if (strlen($s)<1) return '';
$lastchar = substr($s,strlen($s)-1);
if ($lastchar == '1') return 'st';
if ($lastchar == '2') return 'nd';
if ($lastchar == '3') return 'rd';
return 'th';
}
print 'You are the'.$result->hit_count.ending($result->hit_count).'
visitor.'

--
Tom Thackrey
www.creative-light.com
 
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit!
Old 07-01-2007, 5:28 PM   #3
Dmitry Ruban
 
Dmitry Ruban's Avatar
 
Posts: n/a
My Photos: (0)

Banked:
MK Cash: $

I am Worth:
MK Cash: $
Donate

Recent Blog: None

Default finding last digit

Hey Mark

You're camplicationg everything,

If you'd like to now last digit do following:

$ends = array ( 1 => 'st', 2 => 'nd', 3 => 'rd' );
$count_end_digit = $result->hit_count % 10;
echo "You are the" . $result->hit_count . ( isset($ends[$count_end_digit]) ?
$ends[$count_end_digit] : "th"" );

That's it.

Best,
Dima

> How do I find the last digit of a number and output text accordingly? This
> is the code I'm trying to use, but isn't working:
>
> function ending() {
> $count_digits = preg_split('//', $result->hit_count, -1,
> PREG_SPLIT_NO_EMPTY);
> $count_len = strlen($result->hit_count);
> $count_end_digit = $count_digits[$count_len--];
> if ($count_end_digit == 1) {print "st";}
> elseif ($count_end_digit == 2) {print "nd";}
> elseif ($count_end_digit == 3) {print "rd";}
> else {print "th";}
> }
>
> I call it later with print "You are the" . $result->hit_count .

ending()
> . " visitor";
>
> $result->hit_count is a variable I created for getting the value from a
> MySQL database. I can easily output the number, so the variable isn't the
> problem. What is?
>
>



 
Add Post to del.icio.usBookmark Post in TechnoratiFurl this Post!Spurl this Post!Reddit!
Featured Websites
Free Space
Free Space
Free Space Free Space
Closed Thread
Tags: , ,




Currently Active Users Viewing This Thread: 1 (0 members and 1 guests)
 
Thread Tools
Display Modes

Posting Rules
You may not post new threads
You may not post replies
You may not post attachments
You may not edit your posts

vB code is On
Smilies are On
[IMG] code is On
HTML code is Off
Trackbacks are On
Pingbacks are On
Refbacks are On

Similar Threads
Thread Thread Starter Forum Replies Last Post
Finding Photoshop Instructors? Starband Graphics in general 4 06-11-2007 9:43 PM
Finding a Wii to buy drax Console Subjects 8 06-11-2007 12:57 AM
finding references (FKs) in INNODB Erwin Moller Database 0 06-10-2007 12:27 AM
Finding your thread a home SlothX311 Community News And Reviews 6 07-16-2006 9:46 PM


Featured Websites




All times are GMT +1. The time now is 12:28 AM.


Powered by: vBulletin Copyright ©2000 - 2008, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO 3.0.0
Cheap Computers
MK PitStop Copyright 2005 - 2008

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98