2012-07-16 93 views
0

請參閱下面的代碼。我想按名稱排序選項標記,而不是按id排序。使用PHP按字母順序對html字符串進行排序

這裏是我的代碼:

<?php 

$string = '<option id=a1>Sinead Shannon Roche<option id=a2>Emile Abossolo Mbo<option id=a3>Youssouf Djaoro<option id=a4>Dioucounda Koma'; 
$new_string = ''; 

$s = explode('<', $string); 
asort($s); 
foreach($s AS $v) { 
    $new_string = $new_string . '<' . $v; 
} 

// I want $new_string to be "<option id=a4>Dioucounda Koma<option id=a2>Emile Abossolo Mbo<option id=a1>Sinead Shannon Roche<option id=a3>Youssouf Djaoro" 

?> 

回答

1

我可以使用jQuery這個自己...

如果你是intrested繼承人的代碼。

聲明全局函數

$.fn.sortSelect = function() { 
    var op = this.children("option"); 
    op.sort(function(a, b) { 
     return a.text > b.text ? 1 : -1; 
    }) 
    return this.empty().append(op); 
} 

並調用從代碼的功能。

$("#my_select").sortSelect(); 
+0

謝謝,但我需要它在PHP中... – user1087110 2012-07-16 17:59:19

相關問題