in reply to Re: using arrays insteaed of files
in thread using arrays insteaed of files

I have tried all of the suggestions.
$database = "@names"; # space separated list of names $database = @names; # number of elements in @names $database = \@names; # reference to @names $database = [@names]; # reference to a copy of @names
But no data ever seems to be there.

Replies are listed 'Best First'.
Re: Re: Re: using arrays insteaed of files
by dvergin (Monsignor) on Jul 11, 2003 at 17:13 UTC
    You say: "But no data ever seems to be there."

    What do you mean by "there"? All of the commands shown will put something into the variable $database if @names had something in it to begin with.

    The statement: my $database = "test.dbf"; looks like you were previously assigning a filename to $database. And that filename was then being passed to test(). Is that the case? If so, a routine expecting a filename is not going to do well if passed a string containing data instead.

    You seem to be at a beginning level so we will be much more able to help you if you tell us more specifically what you are doing and what you are asking for:

    • Where did you expect the data to be after you tried the statements above?
    • What did you do that convinced you that "no data ever seems to be there"?
    • In general: what are you *actually* doing (show us the code) and what are you seeing as a result?
    • What file are you refering to when you say "
    • What does the test() routine look like?
    • Did you have any success passing the value 'test.dbf' to the test() routine (before you tried setting $database to the array value)?

    NOTE: What often happens when you force yourself to *demonstrate* your problem to us instead of just reporting things like "it doesn't work" or "nothing was there" is that, in carefully laying out the specifics of your attempts you discover the solution for yourself. It's a good discipline.

    P.S. Good work on using "my". Is there a "use strict" at the top of your script also? And are you using warnings?

    "Perl is a mess and that's good because the
    problem space is also a mess.
    " - Larry Wall