From 92d8d3af4fb010a2b0c5f0a46dc1e6acc29be43d Mon Sep 17 00:00:00 2001 From: pete_morgan Date: Tue, 13 Sep 2005 16:42:49 +0000 Subject: [PATCH] tweaks --- .../advanced-features-objects.xml | 33 +++++++++++-------- 1 file changed, 20 insertions(+), 13 deletions(-) diff --git a/docs/en/programmers/advanced-features/advanced-features-objects.xml b/docs/en/programmers/advanced-features/advanced-features-objects.xml index e84fbe04..6c5f5e57 100644 --- a/docs/en/programmers/advanced-features/advanced-features-objects.xml +++ b/docs/en/programmers/advanced-features/advanced-features-objects.xml @@ -3,11 +3,15 @@ Objects - Smarty allows access to PHP objects through the templates. There are + Smarty allows access to PHP + objects through the templates. + There are two ways to access them. One way is to register objects to the template, - then use access them via syntax similar to custom functions. The other way - is to assign objects + then use access them via syntax similar to + custom functions. + The other way + is to assign() objects to the templates and access them much like any other assigned variable. The first method has a much nicer template syntax. It is also more secure, as a registered object can be restricted to certain @@ -62,22 +66,22 @@ class My_Object { function meth1($params, &$smarty_obj) { - return "this is my meth1"; + return 'this is my meth1'; } } $myobj = new My_Object; // registering the object (will be by reference) -$smarty->register_object("foobar",$myobj); +$smarty->register_object('foobar',$myobj); // if we want to restrict access to certain methods or properties, list them -$smarty->register_object("foobar",$myobj,array('meth1','meth2','prop1')); +$smarty->register_object('foobar',$myobj,array('meth1','meth2','prop1')); // if you want to use the traditional object parameter format, pass a boolean of false -$smarty->register_object("foobar",$myobj,null,false); +$smarty->register_object('foobar',$myobj,null,false); // We can also assign objects. Assign by ref when possible. -$smarty->assign_by_ref("myobj", $myobj); +$smarty->assign_by_ref('myobj', $myobj); -$smarty->display("index.tpl"); +$smarty->display('index.tpl'); ?> ]]> @@ -87,17 +91,21 @@ $smarty->display("index.tpl"); meth1 p1="foo" p2=$bar} +{foobar->meth1 p1='foo' p2=$bar} {* you can also assign the output *} -{foobar->meth1 p1="foo" p2=$bar assign="output"} +{foobar->meth1 p1='foo' p2=$bar assign='output'} the output was {$output} {* access our assigned object *} -{$myobj->meth1("foo",$bar)} +{$myobj->meth1('foo',$bar)} ]]> + + See also register_object() + assign() + -