Ben veritabanını sorgulamak ve belirli id için var ve orada ben bu kod parçası varsa içeriği alacağı bir işlevi vardır:
var_dump($a); ---STEP 1
return $a ---STEP 2
var_dump($a); ---STEP 3
exit(); ---STEP 4
Ben ($ a) var_dump yaptığınızda, bana --- ADIM 1 verir
object(ArrayObject)[67]
public 'shoppingBasket' =>
array
'offers' =>
array
10 =>
array
...
11224 =>
array
...
public 'recommendations' =>
array
10017 =>
array
'object_id' => string '10017' (length=5)
'offer_type' => string 'Atomic' (length=6)
'family' => string '' (length=0)
'is_unica' => boolean false
'financial_terms' =>
array
...
'contract_constraints' =>
array
...
'prices' =>
array
...
$a
arasında olduğu gibi bana --- ADIM 3 verir daha ArrayObject
yazın ama dönüş kullanmayın zaman $a
ve var_dump($a)
daha
O:11:"ArrayObject":2:{s:14:"shoppingBasket";a:1:{s:6:"offers";a:2:{i:10;a:8:{s:9:"object_id";s:2:"10";s:6:"family";s:8:"Internet";s:8:"is_unica";b:1;s:10:"offer_type";s:6:"Atomic";s:24:"product_specification_id";s:6:"134455";s:20:"contract_constraints";a:5:{s:19:"min_contract_period";s:1:"1";s:13:"notice_period";s:2:"12";s:15:"rollover_period";s:1:"1";s:18:"right_of_wd_period";s:1:"1";s:19:"cancellation_period";s:6:"ALWAYS";}s:15:"financial_terms";a:3:{s:14:"billing_period";a:2:{i:0;s:6:"YEARLY";i:1;s:9:"QUARTERLY";}s:14:"payment_method";a:1:{i:0;s:12:"DIRECT_DEBIT";}s:17:"bill_presentation";a:1:{i:0;s:5:"PAPER";}}s:6:"prices";a:1:{i:25;a:1:{s:9:"object_id";s:2:"25";}}}i:11224;a:8:{s:9:"object_id";s:5:"11224";s:6:"family";s:8:"Internet";s:8:"is_unica";b:0;s:10:"offer_type";s:11:"DOUBLE_PLAY";s:24:"product_specification_id";s:5:"32567";s:20:"contract_constraints";a:5:{s:19:"min_contract_period";s:1:"8";s:13:"notice_period";s:1:"2";s:15:"rollover_period";s:1:"6";s:18:"right_of_wd_period";s:1:"1";s:19:"cancellation_period";s:12:"END_OF_MONTH";}s:15:"financial_terms";a:3:{s:14:"billing_period";a:2:{i:0;s:6:"YEARLY";i:1;s:9:"QUARTERLY";}s:14:"payment_method";a:1:{i:0;s:12:"DIRECT_DEBIT";}s:17:"bill_presentation";a:1:{i:0;s:5:"PAPER";}}s:6:"prices";a:0:{}}}}s:15:"recommendations";a:1:{i:10017;a:7:{s:9:"object_id";s:5:"10017";s:10:"offer_type";s:6:"Atomic";s:6:"family";s:0:"";s:8:"is_unica";b:0;s:15:"financial_terms";a:3:{s:14:"billing_period";a:1:{i:0;s:9:"QUARTERLY";}s:14:"payment_method";a:1:{i:0;s:12:"DIRECT_DEBIT";}s:17:"bill_presentation";a:1:{i:0;s:5:"PAPER";}}s:20:"contract_constraints";a:5:{s:19:"min_contract_period";i:24;s:19:"cancellation_period";s:6:"ALWAYS";s:13:"notice_period";i:3;s:15:"rollover_period";i:2;s:18:"right_of_wd_period";i:1;}s:6:"prices";a:1:{i:99;a:1:{s:9:"object_id";s:2:"99";}}}}}
Onun bu şekilde oluyor neden biz veritabanını sorgulamak ve o kimliği için içerik almak daha biz belirli id veritabanında içerik normalde eğer, emin değilim.
Q: Ama neden burada $a
için farklı değerler, herhangi bir öneriniz alıyorum emin değilim?
Q: nasıl php ADIM 3 çıkışını unserialize olabilir. I unserialize
fonksiyonunu ama onun değil çalışma kullanarak denedim.
Teşekkürler.
Update:
İşte associateCollateral işlevi çağıran işlevi:
public function getOfferById($id, $raw = FALSE)
{
$offers = $this->getOfferDao()->getByID($id);
$offer_count = $offers->count();
//var_dump($offer_count);
//exit();
// Throw an exception if no results were found.
if (!$offers->count())
{
throw new Exception("No offers were found while searching for ids: {$id}.");
}
if (!$raw)
{
$offers = $this->validateOffers($offers);
}
// Associate collateral content with offers to send back.
return $this->associateCollateral($offers);
//$val = $this->associateCollateral($offers);
//echo "Here is the value of Associate Collateral \n";
//var_dump($val);
//exit();
}
İşte o gitmek ve teminat içeriği veritabanına kontrol ve sağlanan içeriği id bazı teminat içerik varsa bakacağız olurdu daha associateCollateral
function denir associateCollateral
Fonksiyonu, ve bunu yaparsa gitmek ve teminat içeriği alacağı daha.
private function associateCollateral($entities)
{
//var_dump($entities);
// Extract all object ids from the given set of ids, and pass into the getContentId.
$content_ids = $this->getCollateralDao()->getContentId(array_keys($entities->offsetGet('recommendations')));
// Call to CMS to get collateral content.
/*foreach($content_ids as $content_id)
{
$contentObj = CmsObjectHandler::get(OBJECT_TYPE_CONTENT,$content_id);
$content = $contentObj->getContent();
$result += $content;
echo"Here \n";
print_r($result)."\n";
//exit();
}*/
var_dump($entities); ---STEP1
return $entities; ---STEP2
//var_dump($entities); ---STEP3
//exit();
}