मुझे लगता है कि संस्थाओं की सरणी देता है तो मेरे टहनी टेम्पलेट में मैं यह कर मेरी नियंत्रक में एक समारोह तत्वों से अधिक पुनरावृति करने के लिए है:कॉल पीएचपी समारोह
{% for groupName, entity in items %}
<ul>
<ul>
{% for element in entity %}
<li>{{ element.getLabel }}</li>
<li><input type="text" name="detail[{{ element.getId }}]" id="pd_{{ element.getId }}" /><input type="text" name="price[{{ element.getId }}]" id="pd_price_{{ element.getId }}" /><input type="text" name="stock[{{ element.getId }}]" id="pd_stock_{{ element.getId }}" /></li>
{% endfor %}
</ul>
</ul>
{% endfor %}
मेरी नियंत्रक में मैं भी इस पीएचपी कार्य हो :
private function DetailCombination($arr, $level, &$result, $curr = array()) {
for ($i = 0; $i < count($arr); $i++) {
$new = array_merge($curr, array($arr[$i]));
if ($level == 1) {
sort($new);
if (!in_array($new, $result)) {
$result[] = $new;
}
} else {
combinations($arr, $level - 1, $result, $new);
}
}
}
मैं इस तरह से यह कॉल कर सकते हैं:
for ($i = 0; $i < count($arr); $i++) {
$this->DetailCombination($arr, $i + 1, $result);
}
// TEST
foreach ($result as $arr) {
echo join(" ", $arr) . '<br>';
}
यह पीएचपी मज़ा करने के लिए संभव पहुँच है इकाई में तत्वों के सभी संभावित संयोजन प्राप्त करने के लिए टवीग टेम्पलेट से उद्धरण? कैसे?
** अद्यतन **
इस समारोह है कि टहनी खाका द्वारा बाद संसाधित संस्थाओं देता है:
private function getVariations($category_id) {
$items = array();
$em = $this->getDoctrine()->getManager();
$entityCategory = $em->getRepository('CategoryBundle:Category')->find($category_id);
foreach ($entityCategory->getProductDetails() as $entity) {
if ($entity->getToProduct() == 1) {
foreach ($entity->getDetailGroup() as $group) {
if (!array_key_exists($group->getName(), $items)) {
$items [$group->getName()] = array();
}
$items [$group->getName()] [] = $entity;
}
}
}
return $items;
}
क्यों आप इसे नियंत्रक में फोरहैंड और देखने के लिए दोनों '$ items' और' $ combinations' भेजने की प्रक्रिया नहीं है? –
@ManuelGutierrez मैं कोशिश करता हूं लेकिन यह नहीं जानता कि इस पर कोई विचार कैसे है? – Reynier
सामान्य रूप से डेटाबेस से '$ आइटम' प्राप्त करें, फिर इसे नियंत्रक पर अपने' विस्तारक संयोजन() 'फ़ंक्शन पर पास करें, इसे किसी अन्य चर' $ संयोजन 'पर सहेजें और दोनों को देखें, ये सभी चरण चालू होंगे एक ही नियंत्रक समारोह। –