How can I replace empty elements in an array with "OTHER"?

My list (@degree) is built from a SQL command. The NVL command in the SQL isn't working, neither are tests such as:

if (@degree[$i] == "")
if (@degree[$i] == " ")
if (@degree[$i] == '')
if (@degree[$i] == -1)
if (@degree[$i] == 0)
if (@degree[$i] == ())
if (@degree[$i] == undef)

$i is a counter variable in a for loop. Basically it goes through and grabs unique degrees from a table and ends up creating ("AFA", "AS", "AAS", "", "BS"). The list is not always this long, and the empty element is not always in that position 3.

Can anyone help?

I want to either test during the for loop, or after the loop completes for where this empty element is and then replace it with the word, "OTHER".

Thanks for anything -Ken

Answers


First of all, the ith element in an array is $degree[$i], not @degree[$i]. Second, "==" is for numerical comparisons - use "eq" for lexical comparisons. Third of all, try if (defined($degree[$i]))


Everything that Paul said. And, if you need an example:

my @degree = ('AFA', 'AS', 'AAS', '', 'BS');

$_ ||= 'OTHER' for @degree;

print join ' ' => @degree;  # prints 'AFA AS AAS OTHER BS'

If its actually a null in the database, try COALESCE

SELECT COALESCE(column, 'no value') AS column FROM whatever ...

That's the SQL-standard way to do it.


Need Your Help

One Date Picker UIViewController for all Parent Controllers

iphone objective-c cocoa-touch

Couldn't think of an intuitive way to paraphrase the topic for this question, and I apologize for that. My question is the following:

How to enable touch outside when PopOverView open?

ios segue uipopover

I'm using popover with my app. I want to enable touch outside when popoverview open. For now I can not touch outside of popoverview when i click the outside of popoverview , it disappear.