İçeriğe geç

PHP | Dizilerde Sıralama İşlemleri

Bu makalede PHP’nin bize sunduğu dizi sıralama fonksiyonlarını inceleyeceğiz. Tam liste aşağıdaki gibidir.

  • sort — Bir diziyi sıralar
  • rsort — Bir diziyi tersine sıralar
  • krsort — Bir diziyi anahtarlarına göre tersine sıralar
  • ksort — Bir diziyi anahtarlarına göre sıralar
  • arsort — Bir dizinin değerlerini anahtarlarıyla ilişkilerini bozmadan tersine sıralar
  • asort — Bir dizinin değerlerini anahtarlarıyla ilişkilerini bozmadan sıralar
  • usort — Bir diziyi kullanıcı tanımlı bir işlev kullanarak değerlerine göre sıralar
  • uasort — Bir diziyi kullanıcı tanımlı bir işlev kullanarak indislerine göre sıralarken anahtar/değer ilişkisini korur
  • uksort — Bir diziyi kullanıcı tanımlı bir işlev kullanarak anahtarlarına göre sıralar
  • natcasesort — Bir diziyi harf büyüklüğüne duyarsız “doğal sıralama” algoritmasıyla sıralar
  • natsort — Bir diziyi “doğal sıralama” algoritmasıyla sıralar
  • array_multisort — Çok sayıda diziyi veya çok boyutlu dizileri sıralar
  • array_reverse — Diziyi tersine sıralayıp döndürür

Sıralama için aşağıdaki 2 diziyi kullanacağız. İçindeki değerleri rastgele yazarak oluşturdum. 

Her örnekteki çıktıları tek tek verecek olursam yazı çok uzun olacağı için mümkün olduğunca yazıda sadece önemli gördüğüm çıktıları vermeye çalışacağım. Yukarıda isimlerini verdiğim fonksiyonları şimdi sırasıyla incelemeye başlayalım;

sort

Diziyi aşağıdaki 4 farklı değere göre sıralayabilir. 

  • SORT_REGULAR (0) – Elemanlar normal olarak sıralanır (öntanımlı)
  • SORT_NUMERIC (1) – Elemanlar sayısal olarak sıralanır
  • SORT_STRING (2) – Elemanlar dizgesel olarak sıralanır
  • SORT_LOCALE_STRING (5) – Yerele göre dizgesel sıralama yapılır.

Burada SORT_NUMERIC ile SORT_STRING arasındaki fark veri tipinden oluşuyor.

Eğer sayı ve harflerden oluşan bir diziyi SORT_STRING olarak sıralarsanız önce sayılar ardından büyük harfler ve son olarak da küçük harfler sıralanır. Sadece sayılardan oluşan bir diziyi sıralarsanız sayıların türüne bakmaksızın ilk karakterine göre sıralar. Sadece harflerden oluşan bir dizi sıralandığında ise önce büyük harfler sonra küçük harfler gelecek şekilde sıralama yapar.

Eğer sayı ve harflerden oluşan bir diziyi SORT_NUMERIC olarak sıralarsanız önce büyük harf, ardından küçük harf ve son olarak da sayıları sıralar. Sadece sayılardan oluşan bir diziyi sıralarsanız ondalık veya tam sayı oluşuna bakmaksızın sıralar. Sadece harflerden oluşan bir dizi sıralandığında ise harfleri kendi arasında sıralar ardından önce küçük sonra büyük harf gelecek şekilde sıralar. Örneğin; aA, çÇ, ğĞ, kK,…

Not: Bu fonksiyonda tüm sıralamalar değer olarak büyükten küçüğe doğru yapılır.

 

Şimdilik bu yazıya geçici olarak nokta koyuyorum. En kısa zamanda diğer tüm fonksiyonları da ekleyerek yazıyı güncelleyeceğim.

Faydalı olması dileğiyle..

Kategori:PHP

İlk Yorumu Siz Yapın

Bir yanıt yazın

E-posta adresiniz yayınlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

10 − 6 =