2017-04-07 78 views
0

即時通訊嘗試循環我所有的屬性品牌,但是空白,並沒有給出任何錯誤,無法弄清楚我的代碼有什麼問題。循環屬性品牌

我很確定問題出在我的代碼中,因爲我已經將靜態數據放在我的視圖中,並且工作正常,我還注意到問題出在「$ val [0] =」不能得到字符串「$ val」的第一個字符串。

這裏是我的源:

<div class="brandlist"> 
    <div class="lettermenu"> 
     <ul> 
      <li style="float:left;">A-Z Brands List</li> 
      <li><a class="letterlink" href="#A">A</a></li> 
      <li><a class="letterlink" href="#B">B</a></li> 
      <li><a class="letterlink" href="#C">C</a></li> 
      <li><a class="letterlink" href="#D">D</a></li> 
      <li><a class="letterlink" href="#E">E</a></li> 
      <li><a class="letterlink" href="#F">F</a></li> 
      <li><a class="letterlink" href="#G">G</a></li> 
      <li><a class="letterlink" href="#H">H</a></li> 
      <li><a class="letterlink" href="#I">I</a></li> 
      <li><a class="letterlink" href="#J">J</a></li> 
      <li><a class="letterlink" href="#K">K</a></li> 
      <li><a class="letterlink" href="#L">L</a></li> 
      <li><a class="letterlink" href="#M">M</a></li> 
      <li><a class="letterlink" href="#N">N</a></li> 
      <li><a class="letterlink" href="#O">O</a></li> 
      <li><a class="letterlink" href="#P">P</a></li> 
      <li><a class="letterlink" href="#Q">Q</a></li> 
      <li><a class="letterlink" href="#R">R</a></li> 
      <li><a class="letterlink" href="#S">S</a></li> 
      <li><a class="letterlink" href="#T">T</a></li> 
      <li><a class="letterlink" href="#U">U</a></li> 
      <li><a class="letterlink" href="#V">V</a></li> 
      <li><a class="letterlink" href="#W">W</a></li> 
      <li><a class="letterlink" href="#X">X</a></li> 
      <li><a class="letterlink" href="#Y">Y</a></li> 
      <li><a class="letterlink" href="#Z">Z</a></li> 
     </ul> 
    </div> 



    <?php 

    $attribute = Mage::getModel('eav/config')->getAttribute('catalog_product', 'manufacturer'); 
    $alpha="A"; 

    foreach ($attribute->getSource()->getAllOptions(true, true) as $option){ 
      $attributeArray[$option["value"]] = $option["label"]; 
    }foreach($attributeArray as $key=>$val){ 
    $url = "/catalogsearch/advanced/result/"."?manufacturer%5B%5D=".$key; 

    if ($val[0]==="") {} 
    elseif ($alpha===$val[0]){ ?> 
     <div class="brandname"><a href="<?php echo $url?>"> <?php echo $val; ?></a></div><?php 
    } 
    else { 
     echo "<div id='". $val[0] ."' class='letter'>".$val[0]."</div>"; 
    ?> 
    <div class="brandname"><a href="<?php echo $url?>"> <?php echo $val; ?></a></div> 

     <?php 
    $alpha=$val[0]; 
    }} 
    ?> 


    ?> 
</div> 
<style> 
    .brandlist {margin:auto;} 
    .brandname {min-width:200px;float:left;width:25%;padding:10px;} 
    .letter {display:inline-block;width:100%;background:#9F9F9F;padding:10px;} 
    .lettermenu {margin-top:0px;text-align: center;} 
    .letterlink {min-width:20px;width:3.4%;float:left;margin-right:0px;} 
</style> 
+0

我會建議由'改變你的比較操作開始==='到'=='。 $ a === $ b是真的,如果$ a與$ b相等,並且它們是'相同類型'。 $ a == $ b如果$ a在類型改變後等於$ b,則爲真。更多關於這個問題:http://php.net/manual/en/types.comparisons.php#type.comparisons-strict –

回答

0

你的屬性使用下面的代碼用於獲取的收集:

<?php 
$name='manufacturer'; 
$attributeInfo = Mage::getResourceModel('eav/entity_attribute_collection')->setCodeFilter($name)->getFirstItem(); 
$attributeId = $attributeInfo->getAttributeId(); 
$attribute = Mage::getModel('catalog/resource_eav_attribute')->load($attributeId); 
$attributeOptions = $attribute ->getSource()->getAllOptions(false); 
print_r($attributeOptions); 
?>