2012-04-05 29 views
18

Bu iki değişkenin bir dizgisiyle birleştirilmesinden elde edilen değeri atamak istiyorum.Smarty içinde birleştirme

{assign var="url" value="{$WS_PATH}aircraft_images/{$images[i].image}"} 

Lütfen bunu akıllıca nasıl yapabiliriz?

cevap

31

One o f bu çalışması gerekir:

{assign var="url" value=$WS_PATH|cat:"aircraft_images/"|cat:$images[i].image} 

Ya

{assign var="url" value="`$WS_PATH`aircraft_images/`$images[i].image`"} 

emin değilim eğer $ görüntüleri [i] .image doğru ayrıştırılır, sen gerekebilir ilk başka değişkene {atamak}

+0

ilk önce mükemmel bir şekilde çalıştı – Shwet

+1

İkincisi okumak ve çalışmak için daha kolay (önce bir tane 't) – user1429980

+0

Kediyi daha fazla aramanıza gerek olmadığını düşünüyorum, Basit $ var | kedi:' str1 ':' str2 ': ....... benim için çalışıyor :) –

6

assign'u düzgün kullandınız.

bir basitleştirilmiş bir örnek aşağıdaki gibi görünebilir:

yourphpfile.php:

$tpl = new Smarty; 
$tpl->assign('var1','Hello'); 
$tpl->assign('var2','World'); 
$tpl->display('yourtemplate.tpl'); 

yourtemplate.tpl:

... 
<body> 
{assign var="url" value="{$var1} - and - {$var2}"} 
{$url} 
</body> 
... çıkışına neden olur:

Hello - and - World 
+0

Bu aslında çalışır, ancak Oo belgelenmiştir? –

+0

@ jave.web [Bu kılavuzdaki değişken değişkenlere bir göz atın] (https://www.smarty.net/docs/en/language.syntax.variables.tpl), kullanım durumlarının çoğunu kapsamaktadır. – Bjoern

+0

de, {}, belirsizlikleri gidermek ve var/indeks adlandırmada birleştirme yapmak için kullanılır, bu durum söz konusu değildir ... x) –

0

böyle hile olacaktır bir ifade:

{$product1_photo = "{$smarty.const.IMG_URL}/{$pInfo.PhotoName}"} 
İlgili konular