2012-06-16 4 views
-1

가능한 복제를 sortet 수 : 나는 행운에이 코드 조각에 알파벳 순으로 목록을 정렬 할 힌트를 많이 다음 시도
How should I sort this array by key with usort?PHP는 목록이 알파벳 순으로

.

<?php 
foreach ($this->link_items as &$item) : 
?> 
<li> 
<a href="<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catid)); ?>"> 
      <?php echo $item->title; ?></a> 
</li> 
<?php endforeach; ?> 

이 목록이 출력 전에 정렬되어야합니다.

+1

는 숙제 섹션 [질문]. –

+0

* (팁) * [참조를 사용하지 마십시오] (http://schlueters.de/blog/archives/125-Do-not-use-PHP-references.html) – Gordon

+0

가능한 솔루션 : http : //codepad.viper -7.com/2KTIFv – Gordon

답변

0
sort($this->link_items); 

값에 따라 값을 정렬합니다. 키순으로 정렬하려면 ksort을 사용하십시오.

+0

'$ link_items'는 객체이기 때문에 작동하지 않습니다. OP는'usort'를 사용하여 항목 제목을 비교해야합니다. – Gordon

+0

그는 실제로 그의 질문에서 이것을 언급하지 않습니다. 나는 그가 제공 한 정보로 일했다. 이것은 정말로 downvote가 필요합니까? –

+0

OP는 먼저 foreach ($ this-> link_items as & $ item)를 실행 한 다음'$ item-> title'과 다른 속성에 액세스한다는 점에서 상당히 분명한 사실입니다. dv에 관해서는, 음, 기술적으로 대답은 잘못되었으므로 그렇습니다. 그러나 그것은 당신이 질문을 바로 잡도록 권장하는 것입니다 (당신을 처벌하지 않기 위해). – Gordon

-1

사용 :

$sorted_array = array_multisort($this->link_items, SORT_ASC); 
<?php 
foreach ($sorted_array as &$item) : 
?> 
<li> 
<a href="<?php echo JRoute::_(ContentHelperRoute::getArticleRoute($item->slug, $item->catid)); ?>"> 
      <?php echo $item->title; ?></a> 
</li> 
<?php endforeach; ?> 
+0

'array_multisort'는 부울을 반환합니다. 정렬 된 배열을 반환하더라도 객체에 여러 속성이 있기 때문에 결과가 잘못 될 수 있습니다. – Gordon

관련 문제