The reason you are not getting result with getFirstItem
or getLastItem
on your collection is because they are function which return values. If a function returns data, then you must use a variable to store the returned value.
check Varien_Data_Collection::getFirstItem()
in lib\Varien\Data\Collection.php
/**
* Retrieve collection last item
*
* @return Varien_Object
*/
public function getLastItem()
{
$this->load();
if (count($this->_items)) {
return end($this->_items);
}
return new $this->_itemObjectClass();
}
You can see in its details @return Varien_Object
it returns Varian_Object
.
As this function returns data, you have to use a variable to get returned data or it will give you full collection data with filter.
Thats why
$shipModel->addFieldToFilter('shipment_incrementid', array(array('like' => $shipidarr[0].'%')))->getLastItem();
will give you full collection with filtered data and
$lastItem = $shipModel->addFieldToFilter('shipment_incrementid', array(array('like' => $shipidarr[0].'%')))->getLastItem();
will give you last item by code end($this->_items);
var_dump($shipModel->getData())
after you get collection?