Birileri artık buna bir çözüm ile gelmiş olmalıdır. Biz PHP 5.2 kullanıyor. (Neden bana sormayın.) Ben bir HTML tablosu / datagrid gibi bir kayıt görüntülemek için bir PHP sınıfı yazdım, ve ben biz kullanıcının seçtiği hangisi sütun ile DataGrid sıralamak böylece genişletmek istiyoruz. Aşağıdaki örnek veriler, biz Adı, Gömlek, atama veya Yaş alanlar tarafından kayıt dizisi sıralamak gerekebilir. Ben ekran kısmının ilgilenir, ben sadece veri dizisi sıralama ile yardıma ihtiyacım var.
Her zamanki gibi, ben, bir sonuç almak o neden düşünce yineleme ve bir assciateiave diziye kayıtları koymak için bir veritabanını sorgulamak. Yani, biz diziler ile sonuna kadar. (Aşağıya bakınız.) Ben kümesi içinde herhangi bir sütuna göre sıralamak gerekiyor. Ancak, tasarım zamanında sütun adlarını bilmiyorum, ne de kolonlarını dize veya sayısal değerler olacak eğer ben bileceğim.
Bu çözümler bir ton gördük, ama ben bir İYİ ve genel çözüm görmedim biri ben JENERİK olan kayıt dizisi sıralayabilirsiniz bir yol önerebilir misiniz, ve herhangi bir kayıt üzerinde çalışacak? Yine, tasarım zamanında alanların adlarını veya veritiplerini bilemezsiniz. Aşağıda sunulan dizinin sadece bir örneğidir.
GÜNCELLEME: Evet, ben veritabanı sıralama yapmak isterdim, ama bu sadece ne olacak değil. Biz çalışan sorguları çok karmaşıktır. (Ben gerçekten Star Trek karakterleri bir tablo sorgulama değilim.) Onlar katılır sınırlarını ve karmaşık hükümler içermektedir. ORDER BY eklemek için SQL deyimini çürütmek için bir işlev yazma gerçekten bir seçenek değildir. Ayrıca, bazen biz zaten sorguda bir sonucudur dizi, yerine yeni bir sorgu çalıştırmak için yeteneği var.
Array
(
[0] => Array
(
[name] => Kirk
[shrit] => Gold
[assign] => Bridge
)
[1] => Array
(
[name] => Spock
[shrit] => Blue
[assign] => Bridge
)
[2] => Array
(
[name] => Uhura
[shrit] => Red
[assign] => Bridge
)
[3] => Array
(
[name] => Scotty
[shrit] => Red
[assign] => Engineering
)
[4] => Array
(
[name] => McCoy
[shrit] => Blue
[assign] => Sick Bay
)
)