title: php array_filter() of a nested array
body: <p>I am trying array_filter() to remove nested arrays that are blank but I only get back all the nested arrays. I know I am using it wrong but see a similar case like what I am trying.</p>
  <p>Here is the data:</p>
  <pre><code>[
      'ticket_number' =&gt; 'sdfsdfsdf 2',
      'strategy_id' =&gt; '5',
      'journal_entries_strategy_conditions' =&gt; [
          (int) 0 =&gt; [
              'strategies_condition_id' =&gt; ''
          ],
          (int) 1 =&gt; [
              'strategies_condition_id' =&gt; '1'
          ]
      ],
      'timeframe' =&gt; '',
  ]
  </code></pre>
  <p>I want to remove <code>'strategies_condition_id' =&gt; ''</code> but all I get back is</p>
  <pre><code>[
      (int) 0 =&gt; [
          'strategies_condition_id' =&gt; ''
      ],
      (int) 1 =&gt; [
          'strategies_condition_id' =&gt; '1'
      ]
  ]
  </code></pre>
  <p>I think I am using it right:</p>
  <pre><code>debug(
    array_filter(
      $data['journal_entries_strategy_conditions'], 
      function($value) { return !is_null($value) &amp;&amp; $value !== ''; }
    )
  );
  </code></pre>