<pre>
<?php
$array = array('','key'=>'','Name'=>'A','id'=>3, 'foo' => '', 'hello!', 'anotherKey' => '');
$firstNonEmpty = 0;
$i = 0;
foreach ($array as $val) {
if ($val != '') {
$firstNonEmpty = $i;
break;
}
++$i;
}
$lastNonEmpty = $count = count($array); for ($i = $count; $i > 0; --$i) {
$lastNonEmpty = $i;
break;
}
}
$array = array_slice($array, $firstNonEmpty, $lastNonEmpty - $firstNonEmpty);
PHByZT4KPD9waHAKJGFycmF5ID0gYXJyYXkoJycsJ2tleSc9PicnLCdOYW1lJz0+J0EnLCdpZCc9PjMsICdmb28nID0+ICcnLCAnaGVsbG8hJywgJ2Fub3RoZXJLZXknID0+ICcnKTsKCiRmaXJzdE5vbkVtcHR5ID0gMDsKJGkgPSAwOwpmb3JlYWNoICgkYXJyYXkgYXMgJHZhbCkgewogICAgaWYgKCR2YWwgIT0gJycpIHsKICAgICAgICAkZmlyc3ROb25FbXB0eSA9ICRpOwogICAgICAgIGJyZWFrOwogICAgfQogICAgKyskaTsKfQoKJGxhc3ROb25FbXB0eSA9ICRjb3VudCA9IGNvdW50KCRhcnJheSk7CmVuZCgkYXJyYXkpOwpmb3IgKCRpID0gJGNvdW50OyAkaSA+IDA7IC0tJGkpIHsKICAgIGlmIChjdXJyZW50KCRhcnJheSkgIT0gJycpIHsKICAgICAgICAkbGFzdE5vbkVtcHR5ID0gJGk7CiAgICAgICAgYnJlYWs7CiAgICB9CiAgICBwcmV2KCRhcnJheSk7Cn0KCiRhcnJheSA9IGFycmF5X3NsaWNlKCRhcnJheSwgJGZpcnN0Tm9uRW1wdHksICRsYXN0Tm9uRW1wdHkgLSAkZmlyc3ROb25FbXB0eSk7CgpwcmludF9yKCRhcnJheSk7Cg==