Ben bir özel Oracle fonksiyonu veya PHP ile bu HTML dize inşaatı işlemek gerekir?

0 Cevap php

Benim proje üzerinde this question kodu uygulanması sırasında ben bir şey başarmak 3 yolu var fark ama ben bir daha hiçbir fikrim yok. Yine diğer üzerinden birini kullanarak bir performans var mı? Bu performans daha karmaşık uygulama değer mi? Bu bilmek istediğiniz şeyler tür.

Ben belirtmek vermedi rağmen, bu soru, bir tablodan bir film bilgisi seçerek ve virgülle ayırarak, tek bir sütunda her tür katılmak üzereydi. Şimdi, ben tıkladım türe göre filtre böylece bu türler benim kod tıklanabilir olması gerekir.

Bunu yapmak için 3 yolları düşündüm:

Solution 1)

HTML dizesini oluşturmak için PHP kullanmak dışında başka bir soru üzerine 1 SELECT sorgusu ve işlevini kullanın. Böyle bir şey:

$genres = explode(',', $info['GENRES']);
$count = count($genres);

for($i = 0; $i < $count; $i++) {
    $genres[$i] = '<a href="#">'.$genres[$i].'</a>';
}

$info['GENRES'] = implode(' | ', $genres);

Sonra ben bu yüzden kolayca bu türe göre filtre uygulamak için bir bağlantı oluşturabilirsiniz tarz kimliğini eksik gerçekleşmiş ve ben bunu eklemek Oracle işlevini değiştirme düşündüm. Nasıl? JSON dize oluşturarak (örneğin: {"1":"Action","2":"Crime","5":"Thriller"}, işlevi kolayca bu değiştirilebilir) ve buna göre yukarıdaki kodu adapte basit bir mesele.

Solution 2)

2 SEC ifadeleri kullanın ve tamamen diğer soru üzerine işlevini görmezden. Bu film ile ilgili tüm türler (id ve isim) seçmek için film bilgisi, diğer seçmek için bir sorgu. Sonra PHP HTML kod dizesi oluşturmak için dinlenme yapardı.

Solution 3)

Sadece 1 SELECT sorgusu kullanın ve Oracle fonksiyonu kendisi tarafından tüm dizeyi oluşturmak için uyarladı. Anlamı, PHP kodu SQL deyimi yürütme gibi basit olurdu. Oracle fonksiyonu tüm HTML dizesini hazırlamak olacaktır.

Gerçekten alakasız render, ihtiyaç gibi Şimdi, bu çözüm işe olmayabilir. Ama ben, gerçekten henüz bu konuda düşünce değil tam olarak nasıl türe göre filtre için bu HTML bağlantıları kurmak için gidiyorum emin değilim sebebini bilmiyoruz. Peki, PHP hep, ben bir Oracle işlevi aynı şeyi emin bir yol veya başka öyle değil yapabilirsiniz.

Yine de, ben öyle inanıyorum, en bu mümkün varsayalım.

Which solution should I go for?

Tüm iş (veya tersi) yapmak için Oracle işlevi için bu durumda herhangi bir nedeni, var mı? Bu göz önüne alındığında, ben çözüm 3 veya solüsyon 1/2 ile gitmeli?

Çözelti 1/2 daha iyi bir yol ise, hangisinin ben gitmeli? Çözüm 1 Oracle işlevi PHP kodu ama başka bir 1 SEÇ vardır. Çözüm 2 PHP kodu 2 seçer vardır. Diğer üzerinden bir performans artışı var mı ya da temelde aynıdır? Eğer öyleyse, hangisi daha iyi?

Çözüm 1 basit bir PHP kodu var ama Oracle fonksiyonu için biraz daha karmaşık bir kod tanıttı. Öte yandan, çözelti 2 hiç Oracle fonksiyon kodu bulunur ve PHP kodu olsa çok, boyutu / karmaşıklığı değil artacaktır.

Ben çözüm 1 meyilli değilim, ama sizin düşüncelerinizi duymak isterim.

0 Cevap