Bir adres dizesini ayrı değişkenlere bölme - Coldfusion

Aug 18 2020

Veritabanımdaki bir adres alanını ayrı bileşenlerine bölmekle uğraşıyorum.

Veritabanımdan # şirket_adresi # sütununda depolanan adres verilerini alıyorum. Veriyi çıktıladığımda veri şöyle görünüyor:

Adres1 Adres2 (Her zaman mevcut değil) Şehir, Eyalet Posta Kodu (Bazen virgül vardır, bazen yoktur)

# Şirket_adresi # içindeki dizeyi parçalamak ve adresin her bir parçasını kendi değişkenine atamak istiyorum: değişken1 - adres1 değişken2 - adres2 değişken3 - şehir değişkeni4 - durum değişkeni5 - zip

Bu verilere sahip olduğumda, onu ayrı biçiminde tekrar db'ye gireceğim.

Listtoarray işlevini kullanmayı denedim, ancak tüm dizeyi bir dizi öğesine atıyor ve adres2 satırını tamamen atlıyor gibi görünüyor.

İşte kullandığım kod:

<!--- Select ticket record --->
 <cfquery name="get_ticket" datasource="#datasource#">
   SELECT *
   FROM closed_tickets
   where ticket_id = #url.ticket_id#
 </cfquery>

<cfoutput>

<cfset list = "#get_ticket.company_address#">
<cfset arr = listToArray (list, 'ch(13)' ,false,true)>
<cfdump var="#arr#">

</cfoutput>

Biri yardım edebilir mi??

Yanıtlar

3 rrk Aug 17 2020 at 22:49

Sorun, chr(13)bir dizge olarak kullanmanızdır . Aşağıdakileri kullanın.

<cfset arr = listToArray (list, chr(13) , false, true)>