I'm not sure why this isn't working. I got a hash that looks like this:
$hash= {
'test_link_color' => '#31e500',
'test_widget_header_color' => '#c6b989',
'header_textcolor' => 'blank',
'test_menu_color' => '#004d59',
'test_widget_color' => '#eee3b7',
'custom_logo' => 5,
'test_headline_color' => '#7b0706',
'custom_css_post_id' => -1,
'header_image_data' => bless( {
'height' => 250,
'width' => 1140,
'attachment_id' => 9,
}, 'PHP::Serialization::Object
+::stdClass' ),
'test_article_background_color' => '#ceddd2',
'test_menu_text_color' => '#ffffff',
'test_widget_title_color' => '#ffffff',
'test_menu_hl_color' => '#a74d3d',
'nav_menu_locations' => {
'menu-1' => 2
},
'background_color' => 'ffffff',
'test_text_color' => '#000000'
};
I want to filter out all keys that aren't a color property, so I have:
my %colors = map { $_ => %$hash{$_} } grep { $_ =~ /color$/ } keys %$h
+ash;
I'm getting a result with they key/values all mixed up:
%colors = (
'ffffff' => 'test_text_color',
'test_article_background_color' => 'test_article_background_
+color',
'blank' => 'test_menu_color',
'test_menu_text_color' => '#ffffff',
'test_text_color' => '#000000',
'background_color' => 'background_color',
'#31e500' => 'test_widget_header_color',
'test_widget_title_color' => 'test_widget_title_color',
'#eee3b7' => 'test_headline_color',
'#ceddd2' => 'test_menu_text_color',
'test_menu_hl_color' => '#a74d3d',
'#ffffff' => 'test_menu_hl_color',
'test_link_color' => 'test_link_color',
'test_widget_header_color' => '#c6b989',
'test_widget_color' => 'test_widget_color',
'test_headline_color' => '#7b0706',
'header_textcolor' => 'header_textcolor',
'test_menu_color' => '#004d59'
);
I'm not sure what I'm missing here.
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.