本文整理汇总了PHP中QuickBooks_Object::_fromXMLHelper方法的典型用法代码示例。如果您正苦于以下问题:PHP QuickBooks_Object::_fromXMLHelper方法的具体用法?PHP QuickBooks_Object::_fromXMLHelper怎么用?PHP QuickBooks_Object::_fromXMLHelper使用的例子?那么恭喜您, 这里精选的方法代码示例或许可以为您提供帮助。您也可以进一步了解该方法所在类QuickBooks_Object
的用法示例。
在下文中一共展示了QuickBooks_Object::_fromXMLHelper方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的PHP代码示例。
示例1: fromXML
/**
* Convert a QuickBooks_XML_Node object to a QuickBooks_Object_* object instance
*
* @param QuickBooks_XML_Node $XML
* @param string $action_or_object
* @return QuickBooks_Object
*/
public static function fromXML($XML, $action_or_object = null)
{
if (!$action_or_object) {
$action_or_object = $XML->name();
}
$type = QuickBooks_Utilities::actionToObject($action_or_object);
$class = 'QuickBooks_Object_' . ucfirst(strtolower($type));
if (class_exists($class)) {
$Object = QuickBooks_Object::_fromXMLHelper($class, $XML);
$children = array();
switch ($Object->object()) {
case QUICKBOOKS_OBJECT_PURCHASEORDER:
$children = array('PurchaseOrderLineRet' => array('QuickBooks_Object_PurchaseOrder_PurchaseOrderLine', 'addPurchaseOrderLine'));
break;
case QUICKBOOKS_OBJECT_INVOICE:
$children = array('InvoiceLineRet' => array('QuickBooks_Object_Invoice_InvoiceLine', 'addInvoiceLine'));
break;
case QUICKBOOKS_OBJECT_ESTIMATE:
$children = array('EstimateLineRet' => array('QuickBooks_Object_Estimate_EstimateLine', 'addEstimateLine'));
break;
case QUICKBOOKS_OBJECT_SALESRECEIPT:
$children = array('SalesReceiptLineRet' => array('QuickBooks_Object_SalesReceipt_SalesReceiptLine', 'addSalesReceiptLine'));
break;
case QUICKBOOKS_OBJECT_JOURNALENTRY:
$children = array('JournalCreditLine' => array('QuickBooks_Object_JournalEntry_JournalCreditLine', 'addCreditLine'), 'JournalDebitLine' => array('QuickBooks_Object_JournalEntry_JournalDebitLine', 'addDebitLine'));
break;
}
foreach ($children as $node => $tmp) {
$childclass = $tmp[0];
$childmethod = $tmp[1];
if (class_exists($childclass)) {
foreach ($XML->children() as $ChildXML) {
if ($ChildXML->name() == $node) {
$ChildObject = QuickBooks_Object::_fromXMLHelper($childclass, $ChildXML);
$Object->{$childmethod}($ChildObject);
}
}
}
}
return $Object;
}
return false;
}