Wrox Programmer Forums
Go Back   Wrox Programmer Forums > Open Source > Perl
|
Welcome to the p2p.wrox.com Forums.

You are currently viewing the Perl section of the Wrox Programmer to Programmer discussions. This is a community of software programmers and website developers including Wrox book authors and readers. New member registration was closed in 2019. New posts were shut off and the site was archived into this static format as of October 1, 2020. If you require technical support for a Wrox book please contact http://hub.wiley.com
 
Old March 5th, 2007, 11:32 AM
Friend of Wrox
 
Join Date: Jan 2005
Posts: 1,525
Thanks: 0
Thanked 0 Times in 0 Posts
Send a message via ICQ to crmpicco Send a message via AIM to crmpicco Send a message via MSN to crmpicco Send a message via Yahoo to crmpicco
Default quicker way to create variables in perl - dynamic?

Code:
            @sday = split(/=/, $sday);
            @smon = split(/=/, $smon);
            @eday = split(/=/, $eday);
            @emon = split(/=/, $emon);
is there a quicker way to do this? in a loop?

www.crmpicco.co.uk
www.ie7.com
__________________
_______________________
Ayrshire Minis - a Mini E-Community
http://www.ayrshireminis.com
http://www.crmpicco.co.uk
 
Old March 5th, 2007, 11:34 AM
Friend of Wrox
 
Join Date: Jan 2005
Posts: 1,525
Thanks: 0
Thanked 0 Times in 0 Posts
Send a message via ICQ to crmpicco Send a message via AIM to crmpicco Send a message via MSN to crmpicco Send a message via Yahoo to crmpicco
Default

Code:
            if (length($startday) eq 1) {
                $startday = "0" . $startday;
            }
            if (length($startmon) eq 1) {
                $startmon = "0" . $startmon;
            }
            if (length($endday) eq 1) {
                $endday = "0" . $endday;
            }
            if (length($endmon) eq 1) {
                $endmon = "0" . $endmon;
            }
trying to do something similar with this code as well??? :-(
any quicker way to do it? more efficient? cheers. picco

www.crmpicco.co.uk
www.ie7.com
 
Old March 5th, 2007, 11:49 AM
Friend of Wrox
 
Join Date: Dec 2003
Posts: 488
Thanks: 0
Thanked 3 Times in 3 Posts
Default

I'm not advising that you do, but:

Code:
eval '@'.$_.'=split /=/,$'.$_.';' for qw|sday smon eday emon|;
twisted!

--
Charlie Harvey's website - linux, perl, java, anarchism and punk rock: http://charlieharvey.org.uk
 
Old March 5th, 2007, 11:58 AM
Friend of Wrox
 
Join Date: Dec 2003
Posts: 488
Thanks: 0
Thanked 3 Times in 3 Posts
Default

Quote:
quote:
            if (length($startday) eq 1) {
                $startday = "0" . $startday;
            }
            if (length($startmon) eq 1) {
                $startmon = "0" . $startmon;
            }
            if (length($endday) eq 1) {
                $endday = "0" . $endday;
            }
            if (length($endmon) eq 1) {
                $endmon = "0" . $endmon;
            }
Wrong sort of equality test there, you need == because its a number. If you're trying to do what I think you're trying to do you could use :

Code:
$startday = sprintf '%02d', $startday;
--
Charlie Harvey's website - linux, perl, java, anarchism and punk rock: http://charlieharvey.org.uk
 
Old March 6th, 2007, 07:53 AM
Friend of Wrox
 
Join Date: Jan 2005
Posts: 1,525
Thanks: 0
Thanked 0 Times in 0 Posts
Send a message via ICQ to crmpicco Send a message via AIM to crmpicco Send a message via MSN to crmpicco Send a message via Yahoo to crmpicco
Default

thanks, but - yep, thats twisted

www.crmpicco.co.uk
www.ie7.com





Similar Threads
Thread Thread Starter Forum Replies Last Post
best way to create a table in Perl crmpicco Perl 2 November 21st, 2006 08:45 AM
Dynamic variables neo_jakey Classic ASP Professional 3 October 20th, 2005 09:12 AM
Dynamic If...Then using variables Mitch Access 1 March 11th, 2005 10:59 AM
passing variables from PHP to Perl joconnor Beginning PHP 4 July 21st, 2004 08:13 AM
Dynamic Variables kilika VBScript 2 August 21st, 2003 11:06 AM





Powered by vBulletin®
Copyright ©2000 - 2020, Jelsoft Enterprises Ltd.
Copyright (c) 2020 John Wiley & Sons, Inc.