| 
									
										
										
										
											2023-02-05 23:14:10 +01:00
										 |  |  | # {append}
 | 
					
						
							| 
									
										
										
										
											2021-12-03 11:59:22 +01:00
										 |  |  | 
 | 
					
						
							|  |  |  | `{append}` is used for creating or appending template variable arrays | 
					
						
							|  |  |  | **during the execution of a template**. | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-02-05 23:14:10 +01:00
										 |  |  | ## Attributes
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | | Attribute | Required   | Description                                                                                        | | 
					
						
							|  |  |  | |-----------|------------|----------------------------------------------------------------------------------------------------| | 
					
						
							|  |  |  | | var       |            | The name of the variable being assigned                                                            | | 
					
						
							|  |  |  | | value     |            | The value being assigned                                                                           | | 
					
						
							|  |  |  | | index     | (optional) | The index for the new array element. If not specified the value is append to the end of the array. | | 
					
						
							|  |  |  | | scope     | (optional) | The scope of the assigned variable: parent, root or global. Defaults to local if omitted.          | | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | ## Option Flags
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | | Name    | Description                                         | | 
					
						
							|  |  |  | |---------|-----------------------------------------------------| | 
					
						
							|  |  |  | | nocache | Assigns the variable with the 'nocache' attribute   |  | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2021-12-03 11:59:22 +01:00
										 |  |  | > **Note**
 | 
					
						
							|  |  |  | > | 
					
						
							|  |  |  | > Assignment of variables in-template is essentially placing application
 | 
					
						
							|  |  |  | > logic into the presentation that may be better handled in PHP. Use at
 | 
					
						
							|  |  |  | > your own discretion.
 | 
					
						
							|  |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-02-05 23:14:10 +01:00
										 |  |  | ## Examples
 | 
					
						
							| 
									
										
										
										
											2021-12-03 11:59:22 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-02-05 23:14:10 +01:00
										 |  |  | ```smarty | 
					
						
							|  |  |  | {append var='name' value='Bob' index='first'} | 
					
						
							|  |  |  | {append var='name' value='Meyer' index='last'} | 
					
						
							|  |  |  | // or  | 
					
						
							|  |  |  | {append 'name' 'Bob' index='first'} {* short-hand *} | 
					
						
							|  |  |  | {append 'name' 'Meyer' index='last'} {* short-hand *} | 
					
						
							| 
									
										
										
										
											2021-12-03 11:59:22 +01:00
										 |  |  | 
 | 
					
						
							| 
									
										
										
										
											2023-02-05 23:14:10 +01:00
										 |  |  | The first name is {$name.first}.<br> | 
					
						
							|  |  |  | The last name is {$name.last}. | 
					
						
							|  |  |  | ``` | 
					
						
							| 
									
										
										
										
											2021-12-03 11:59:22 +01:00
										 |  |  |        | 
					
						
							|  |  |  | The above example will output: | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |     The first name is Bob. | 
					
						
							|  |  |  |     The last name is Meyer. | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  |        | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | See also [`append()`](#api.append) and | 
					
						
							|  |  |  | [`getTemplateVars()`](#api.get.template.vars). |