mirror of
https://github.com/smarty-php/smarty.git
synced 2025-08-06 19:34:27 +02:00
Typos correction and all translated now.
This commit is contained in:
@@ -0,0 +1,91 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.escaping">
|
||||
<title>Escaping Penguraian Smarty</title>
|
||||
<para>
|
||||
Ada kalanya diinginkan atau bahkan perlu agar Smarty mengabaikan seksi
|
||||
atau sebaliknya akan diuraikan. Contoh klasi adalah melengketkan kode
|
||||
Javascript atau CSS dalam sebuah template. Masalah muncul karena bahasa
|
||||
tersebut menggunakan karakter { dan } yang juga merupakan
|
||||
<link linkend="language.function.ldelim">pembatas</link> standar untuk
|
||||
Smarty.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Hal paling sederhana untuk menghindari situasi sekaligus adalah dengan
|
||||
memisahkan kode Javascript dan CSS anda ke dalam filenya sendiri dan
|
||||
kemudian menggunakan metode standar HTML untuk mengaksesnya.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Menyertakan konten literal dimungkinkan dengan menggunakan blok <link
|
||||
linkend="language.function.literal">
|
||||
<varname>{literal}..{/literal}</varname></link>.
|
||||
Mirip dengan penggunaan entitas HTML, anda bisa memakai <link
|
||||
linkend="language.function.ldelim"><varname>{ldelim}</varname></link>,<link
|
||||
linkend="language.function.ldelim"><varname>{rdelim}</varname></link> atau
|
||||
<link linkend="language.variables.smarty.ldelim">
|
||||
<varname>{$smarty.ldelim}</varname></link> untuk menampilkan pembatas saat
|
||||
ini.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Seringkali lebih nyaman dengan cukup mengubah <link
|
||||
linkend="variable.left.delimiter">
|
||||
<parameter>$left_delimiter</parameter></link> dan
|
||||
<link linkend="variable.right.delimiter">
|
||||
<parameter>$right_delimiter</parameter></link> Smarty.
|
||||
</para>
|
||||
<example>
|
||||
<title>contoh mengubah pembatas</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->left_delimiter = '<!--{';
|
||||
$smarty->right_delimiter = '}-->';
|
||||
|
||||
$smarty->assign('foo', 'bar');
|
||||
$smarty->assign('name', 'Albert');
|
||||
$smarty->display('example.tpl');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
Welcome <!--{$name}--> to Smarty
|
||||
<script language="javascript">
|
||||
var foo = <!--{$foo}-->;
|
||||
function dosomething() {
|
||||
alert("foo is " + foo);
|
||||
}
|
||||
dosomething();
|
||||
</script>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
54
docs/id/designers/language-basic-syntax/language-math.xml
Normal file
54
docs/id/designers/language-basic-syntax/language-math.xml
Normal file
@@ -0,0 +1,54 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.math">
|
||||
<title>Matematika</title>
|
||||
<para>
|
||||
Matematika dapat diterapkan secara langsung ke nilai variabel.
|
||||
</para>
|
||||
<example>
|
||||
<title>contoh matematika</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$foo+1}
|
||||
|
||||
{$foo*$bar}
|
||||
|
||||
{* beberapa contoh lebih rumit *}
|
||||
|
||||
{$foo->bar-$bar[1]*$baz->foo->bar()-3*7}
|
||||
|
||||
{if ($foo+$bar.test%$baz*134232+10+$b+10)}
|
||||
|
||||
{$foo|truncate:"`$fooTruncCount/$barTruncFactor-1`"}
|
||||
|
||||
{assign var="foo" value="`$foo+$bar`"}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga fungsi <link linkend="language.function.math">
|
||||
<varname>{math}</varname></link> untuk persamaan yang kompleks dan
|
||||
<link linkend="language.function.eval"><varname>{eval}</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,61 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.syntax.attributes">
|
||||
<title>Atribut</title>
|
||||
<para>
|
||||
Kebanyakan <link linkend="language.syntax.functions">fungsi</link>
|
||||
memerlukan atribut yang menetapkan atau mengubah perilakunya. Atribut
|
||||
bagi fungsi Smarty lebih mirip atribut HTML. Nilai statis tidak perlu
|
||||
ditutup dengan tanda kutip, tapi direkomendasikan untuk string literal.
|
||||
Variabel bisa juga dipakai, dan tidak boleh dalam tanda kutip.
|
||||
</para>
|
||||
<para>
|
||||
Beberapa atribut memerlukan nilai boolean (&true; atau &false;). Ini dapat
|
||||
ditetapkan sebagai tanpa tanda kutip <literal>true</literal>,
|
||||
<literal>on</literal>, dan <literal>yes</literal>, atau
|
||||
<literal>false</literal>, <literal>off</literal>, dan
|
||||
<literal>no</literal>.
|
||||
</para>
|
||||
<example>
|
||||
<title>sintaks atribut fungsi</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{include file='header.tpl'}
|
||||
|
||||
{include file='header.tpl' attrib_name='attrib value'}
|
||||
|
||||
{include file=$includeFile}
|
||||
|
||||
{include file=#includeFile# title='Smarty is cool'}
|
||||
|
||||
{html_select_date display_days=yes}
|
||||
|
||||
{mailto address='smarty@example.com'}
|
||||
|
||||
<select name='company_id'>
|
||||
{html_options options=$companies selected=$company_id}
|
||||
</select>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.syntax.comments">
|
||||
<title>Komentar</title>
|
||||
<para>
|
||||
Komentar template dikelilingi oleh bintang, dan ditutup oleh tag
|
||||
<link linkend="variable.left.delimiter">pembatas</link>
|
||||
seperti:
|
||||
</para>
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* ini adalah sebuah komentar *}
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
<para>
|
||||
Komentar Smarty TIDAK ditampilkan dalam output template final, tidak seperti
|
||||
<literal><!-- HTML comments --></literal>.
|
||||
Ini berguna untuk membuat catatan internal dalam template yang tak seorangpun
|
||||
akan melihatnya ;-)
|
||||
</para>
|
||||
<example>
|
||||
<title>Komentar di dalam template</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* Saya adalah komentar Smarty, Saya tidak ada dalam output terkompilasi *}
|
||||
<html>
|
||||
<head>
|
||||
<title>{$title}</title>
|
||||
</head>
|
||||
<body>
|
||||
|
||||
{* komentar smarti satu baris lainnya *}
|
||||
<!-- HTML comment that is sent to the browser -->
|
||||
|
||||
{* ini komentar smarty
|
||||
multi baris
|
||||
tidak dikirimkan ke browser
|
||||
*}
|
||||
|
||||
{*********************************************************
|
||||
Blok komentar multi baris dengan blok penghargaan
|
||||
@ pembuat: bg@example.com
|
||||
@ pemeliharan support@example.com
|
||||
@ para: var yang menetapkan gaya blok
|
||||
@ css: gaya output
|
||||
**********************************************************}
|
||||
|
||||
{* File header dengan logo utama dan lainnya *}
|
||||
{include file='header.tpl'}
|
||||
|
||||
|
||||
{* Catatan Dev: var $includeFile ditempatkan dalam naskah foo.php *}
|
||||
<!-- Displays main content block -->
|
||||
{include file=$includeFile}
|
||||
|
||||
{* blok <select> ini mubazir *}
|
||||
{*
|
||||
<select name="company">
|
||||
{html_options options=$vals selected=$selected_id}
|
||||
</select>
|
||||
*}
|
||||
|
||||
<!-- Show header from affiliate is disabled -->
|
||||
{* $affiliate|upper *}
|
||||
|
||||
{* you cannot nest comments *}
|
||||
{*
|
||||
<select name="company">
|
||||
{* <option value="0">-- none -- </option> *}
|
||||
{html_options options=$vals selected=$selected_id}
|
||||
</select>
|
||||
*}
|
||||
|
||||
|
||||
{* tag cvs untuk template, di bawah 36 HARUS kurs amerika
|
||||
. akan tetapi ia diubah dalam cvs.. *}
|
||||
{* $Id: Exp $ *}
|
||||
{* $Id: *}
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,84 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.syntax.functions">
|
||||
<title>Fungsi</title>
|
||||
<para>
|
||||
Setiap tag Smarty bisa mencetak
|
||||
<link linkend="language.variables">variabel</link> ataupun memanggil beberapa
|
||||
fungsi. Ini diproses dan ditampilkan dengan menutupi fungsi dan
|
||||
<link linkend="language.syntax.attributes">atribut</link>nya
|
||||
di dalam pembatas seperti:
|
||||
<literal>{funcname attr1='val1' attr2='val2'}</literal>.
|
||||
</para>
|
||||
<example>
|
||||
<title>sintaks fungsi</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{config_load file='colors.conf'}
|
||||
|
||||
{include file='header.tpl'}
|
||||
{insert file='banner_ads.tpl' title='Smarty is cool'}
|
||||
|
||||
{if $logged_in}
|
||||
Welcome, <font color="{#fontColor#}">{$name}!</font>
|
||||
{else}
|
||||
hi, {$name}
|
||||
{/if}
|
||||
|
||||
{include file='footer.tpl' ad=$random_id}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Kedua <link linkend="language.builtin.functions">fungsi built-in</link>
|
||||
dan <link linkend="language.custom.functions">fungsi kustom</link>
|
||||
mempunyai sintaks yang sama di dalam template.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>Fungsi built-in adalah
|
||||
<emphasis role="bold">inner</emphasis> pekerjaan Smarty, seperti
|
||||
<link linkend="language.function.if"><varname>{if}</varname></link>,
|
||||
<link linkend="language.function.section"><varname>{section}</varname></link> dan
|
||||
<link linkend="language.function.strip"><varname>{strip}</varname></link>.
|
||||
Tidak diperlukan untuk mengubah atau memodifikasinya.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>Fungsi kustom adalah fungsi
|
||||
<emphasis role="bold">tambahan</emphasis>
|
||||
yang diimplementasikan via <link linkend="plugins">plugins</link>.
|
||||
Ini dapat diubah sesuai dengan yang anda sukai, atau anda bisa membuat yang
|
||||
baru,
|
||||
<link linkend="language.function.html.options">
|
||||
<varname>{html_options}</varname></link> dan
|
||||
<link linkend="language.function.popup"><varname>{popup}</varname></link>
|
||||
adalah contoh dari fungsi kustom.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>
|
||||
Lihat juga <link linkend="api.register.function"><varname>register_function()</varname></link>
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,90 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.syntax.quotes">
|
||||
<title>Menyertakan Vars dalam Tanda Kutip Ganda</title>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem>
|
||||
<para>
|
||||
Smarty akan mengenali <link linkend="language.syntax.variables">variabel</link>
|
||||
yang <link linkend="api.assign">ditempati</link> yang disertakan dalam
|
||||
"tanda kutip ganda" selama nama variabel hanya berisi angka, huruf, garis bawah,
|
||||
dan kurung[].
|
||||
Lihat <ulink url="&url.php-manual;language.variables">penamaan</ulink>
|
||||
untuk lebih jelasnya.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Dengan karakter lainnya, contohnya .titik atau
|
||||
<literal>$object>referensi</literal>, maka variabel harus dikelilingi oleh
|
||||
<literal>`tanda kutip mundur`</literal>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>Anda tidak bisa menyertakan
|
||||
<link linkend="language.modifiers">pengubah</link>, ia harus selalu diterapkan
|
||||
di luar tanda kutip.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>Contoh sintaks</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{func var="test $foo test"} <-- melihat $foo
|
||||
{func var="test $foo_bar test"} <-- melihat $foo_bar
|
||||
{func var="test $foo[0] test"} <-- melihat $foo[0]
|
||||
{func var="test $foo[bar] test"} <-- melihat $foo[bar]
|
||||
{func var="test $foo.bar test"} <-- melihat $foo (bukan $foo.bar)
|
||||
{func var="test `$foo.bar` test"} <-- melihat $foo.bar
|
||||
{func var="test `$foo.bar` test"|escape} <-- pengubah di luar tanda kutip!
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Contoh praktis</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* akan mengganti $tpl_name dengan nilai *}
|
||||
{include file="subdir/$tpl_name.tpl"}
|
||||
|
||||
{* tidak mengganti $tpl_name *}
|
||||
{include file='subdir/$tpl_name.tpl'} <--
|
||||
|
||||
{* harus mempunyai tanda kutip mundur karena berisi sebuah . *}
|
||||
{cycle values="one,two,`$smarty.config.myval`"}
|
||||
|
||||
{* sama seperti $module['contact'].'.tpl' dalam naskah php
|
||||
{include file="`$module.contact`.tpl"}
|
||||
|
||||
{* sama seperti $module[$view].'.tpl' dalam naskah php
|
||||
{include file="$module.$view.tpl"}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga <link linkend="language.modifier.escape"><varname>escape</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,84 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.syntax.variables">
|
||||
<title>Variabel</title>
|
||||
<para>
|
||||
Variabel template dimulai dengan tanda $dolar. Ia dapat berisi angka,
|
||||
huruf dan garis bawah, lebih mirip
|
||||
<ulink url="&url.php-manual;language.variables">variabel PHP</ulink>.
|
||||
Anda bisa mereferensi array dengan indeks secara numerik atau non-numerik.
|
||||
Juga referensi properi dan metode obyek.</para>
|
||||
<para>
|
||||
<link linkend="language.config.variables">Variabel file config</link>
|
||||
adalah kekecualian untuk sintaks $dolar dan sebaliknya direferensi dengan
|
||||
sekeliling #tanda kris#, atau via variabel
|
||||
<link linkend="language.variables.smarty.config">
|
||||
<parameter>$smarty.config</parameter></link>.
|
||||
</para>
|
||||
<example>
|
||||
<title>Variabel</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$foo} <-- menampilkan variabel sederhana (non array/obyek)
|
||||
{$foo[4]} <-- menampilkan elemen ke-5 dari array berbasis-nol
|
||||
{$foo.bar} <-- menampilkan nilai kunci "bar" dari sebuah array, mirip dengan PHP $foo['bar']
|
||||
{$foo.$bar} <-- menampilkan nilai kunci variabel sebuah array, mirip dengan PHP $foo[$bar]
|
||||
{$foo->bar} <-- menampilkan properti obyek "bar"
|
||||
{$foo->bar()} <-- menampilkan pengembalian nilai metode obyek "bar"
|
||||
{#foo#} <-- menampilkan variabel file config "foo"
|
||||
{$smarty.config.foo} <-- persamaan untuk {#foo#}
|
||||
{$foo[bar]} <-- sintaks hanya benar dalam pengulangan, lihat {section}
|
||||
{assign var=foo value='baa'}{$foo} <-- menampilkan "baa", lihat {assign}
|
||||
|
||||
Banyak kombinasi lain yang dibolehkan
|
||||
|
||||
{$foo.bar.baz}
|
||||
{$foo.$bar.$baz}
|
||||
{$foo[4].baz}
|
||||
{$foo[4].$baz}
|
||||
{$foo.bar.baz[4]}
|
||||
{$foo->bar($baz,2,$bar)} <-- mengirimkan parameter
|
||||
{"foo"} <-- nilai statis dibolehkan
|
||||
|
||||
{* menampilkan variabel server "SERVER_NAME" ($_SERVER['SERVER_NAME'])*}
|
||||
{$smarty.server.SERVER_NAME}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>Request variables such as <literal>$_GET</literal>,
|
||||
<literal>$_SESSION</literal>, etc are available via the
|
||||
reserved <link linkend="language.variables.smarty">
|
||||
<parameter>$smarty</parameter></link> variable.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga <link linkend="language.variables.smarty">
|
||||
<parameter>$smarty</parameter></link>,
|
||||
<link linkend="language.config.variables">variabel config</link>
|
||||
<link linkend="language.function.assign"><varname>{assign}</varname></link>
|
||||
dan
|
||||
<link linkend="api.assign"><varname>assign()</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,139 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.capture">
|
||||
<title>{capture}</title>
|
||||
|
||||
<para>
|
||||
<varname>{capture}</varname> dipakai untuk mengumpulkan output template antara
|
||||
tag ke dalam variable daripada menampilkannya. Setiap konten antara
|
||||
<varname>{capture name='foo'}</varname> dan <varname>{/capture}</varname>
|
||||
yang dikumpulkan ke dalam variabel ditetapkan dalam atribut
|
||||
<parameter>name</parameter>.
|
||||
</para>
|
||||
<para>Konten yang ditangkap dapat digunakan dalam template dari variabel <link
|
||||
linkend="language.variables.smarty.capture"><parameter>$smarty.capture.foo</parameter></link>
|
||||
di mana <quote>foo</quote> adalah nilai yang dikirimkan dalam atribut <parameter>name</parameter>.
|
||||
Jika anda tidak menyertakan atribut <parameter>name</parameter>, maka
|
||||
<quote>default</quote> akan dipakai sebagai nama misalnya
|
||||
<parameter>$smarty.capture.default</parameter>.
|
||||
</para>
|
||||
<para><varname>{capture}'s</varname> dapat diulang-ulang.
|
||||
</para>
|
||||
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Attribute Name</entry>
|
||||
<entry>Type</entry>
|
||||
<entry>Required</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Description</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>no</entry>
|
||||
<entry><emphasis>default</emphasis></entry>
|
||||
<entry>The name of the captured block</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>No</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>The variable name where to assign the captured output to</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
|
||||
<note>
|
||||
<title>Perhatian</title>
|
||||
<para>
|
||||
Harap berhati-hati ketika menangkap output <link
|
||||
linkend="language.function.insert"><varname>{insert}</varname></link>. Jika
|
||||
anda menghidupkan
|
||||
<link linkend="caching"><parameter>$caching</parameter></link>
|
||||
dan anda mempunyai perintah
|
||||
<link linkend="language.function.insert"><varname>{insert}</varname></link>
|
||||
yang anda harapkan untuk dijalankan di dalam konten yang di-cache, jangan
|
||||
menangkap konten ini.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<para>
|
||||
<example>
|
||||
<title>{capture} dengan atribut nama</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* kita tidak ingin mencetak tag div kecuali konten yang ditampilkan *}
|
||||
{capture name=banner}
|
||||
{include file='get_banner.tpl'}
|
||||
{/capture}
|
||||
|
||||
{if $smarty.capture.banner ne ''}
|
||||
<div id="banner">{$smarty.capture.banner}</div>
|
||||
{/if}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>{capture} ke dalam variabel template</title>
|
||||
<para>Contoh ini juga memperlihatkan fungsi
|
||||
<link linkend="language.function.popup"><varname>{popup}</varname></link>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{capture name=some_content assign=popText}
|
||||
Server adalah {$smarty.server.SERVER_NAME|upper} pada {$smarty.server.SERVER_ADDR}<br>
|
||||
IP anda adalah {$smarty.server.REMOTE_ADDR}.
|
||||
{/capture}
|
||||
<a href="#" {popup caption='Info Server' text=$popText}>bantuan</a>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
</para>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link
|
||||
linkend="language.variables.smarty.capture"><parameter>$smarty.capture</parameter></link>,
|
||||
<link linkend="language.function.eval"><varname>{eval}</varname></link>,
|
||||
<link linkend="language.function.fetch"><varname>{fetch}</varname></link>,
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>
|
||||
dan <link linkend="language.function.assign"><varname>{assign}</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,183 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.config.load">
|
||||
<title>{config_load}</title>
|
||||
<para>
|
||||
<varname>{config_load}</varname> dipakai untuk mengambil
|
||||
<link linkend="language.config.variables"><parameter>#variables#</parameter></link>
|
||||
konfig dari <link linkend="config.files">file konfigurasi</link> ke dalam
|
||||
template.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Attribute Name</entry>
|
||||
<entry>Type</entry>
|
||||
<entry>Required</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Description</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>file</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Yes</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama file config untuk disertakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>section</entry>
|
||||
<entry>string</entry>
|
||||
<entry>No</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama seksi untuk diambil</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>scope</entry>
|
||||
<entry>string</entry>
|
||||
<entry>no</entry>
|
||||
<entry><emphasis>lokal</emphasis></entry>
|
||||
<entry>
|
||||
Bagaimana lingkup variabel yang diambil diperlakukan, yang harus berupa
|
||||
lokal, parent atau global. Lokal berarti variabel diambil ke dalam konteks
|
||||
template lokal. parent berarti variabel diambil ke dalam konteks lokal
|
||||
dan template leluhur yang memanggilnya.
|
||||
global berarti variabel tersedia bagi seluruh template.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>global</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>No</entry>
|
||||
<entry><emphasis>No</emphasis></entry>
|
||||
<entry>
|
||||
Apakah variabel terlihat ke template leluhurnya atau tidak,
|
||||
sama seperti scope=parent. CATATAN: Atribut ini tidak dipakai lagi
|
||||
oleh atribut scope, tapi masih didukugn. Jika scope disertakan,
|
||||
nilai ini diabaikan.
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>{config_load}</title>
|
||||
<para>
|
||||
File <filename>example.conf</filename>.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
#ini komentar file config
|
||||
|
||||
# variabel global
|
||||
pageTitle = "Main Menu"
|
||||
bodyBgColor = #000000
|
||||
tableBgColor = #000000
|
||||
rowBgColor = #00ff00
|
||||
|
||||
#seksi variabel kustomer
|
||||
[Customer]
|
||||
pageTitle = "Customer Info"
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>dan template</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{config_load file="example.conf"}
|
||||
|
||||
<html>
|
||||
<title>{#pageTitle#|default:"No title"}</title>
|
||||
<body bgcolor="{#bodyBgColor#}">
|
||||
<table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
|
||||
<tr bgcolor="{#rowBgColor#}">
|
||||
<td>First</td>
|
||||
<td>Last</td>
|
||||
<td>Address</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
<link linkend="config.files">File Config</link>
|
||||
dapat juga berisi seksi. Anda bisa mengambil variabel dari dalam seksi
|
||||
dengan menambahkan atribut <parameter>section</parameter>. Catatan bahwa
|
||||
variabel config global selalu diambil bersamaan dengan variabel seksi,
|
||||
dan variabel seksi bernama-sama menimpa global.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
<emphasis>Seksi</emphasis> file config dan fungsi template built-in
|
||||
memanggil <link linkend="language.function.section"><varname>{section}</varname></link>
|
||||
tidak ada kaitannya dengan yang lain, itu terjadi untuk berbagi konvensi
|
||||
penamaan umum.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>function {config_load} dengan seksi</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{config_load file='example.conf' section='Customer'}
|
||||
|
||||
<html>
|
||||
<title>{#pageTitle#}</title>
|
||||
<body bgcolor="{#bodyBgColor#}">
|
||||
<table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
|
||||
<tr bgcolor="{#rowBgColor#}">
|
||||
<td>First</td>
|
||||
<td>Last</td>
|
||||
<td>Address</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat <link linkend="variable.config.overwrite"><parameter>$config_overwrite</parameter></link>
|
||||
untuk membuat arrays dari variabel file config.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga halaman <link linkend="config.files">config files</link>, halaman
|
||||
<link linkend="language.config.variables">config variables</link>,
|
||||
<link linkend="variable.config.dir"><parameter>$config_dir</parameter></link>,
|
||||
<link linkend="api.get.config.vars"><varname>get_config_vars()</varname></link>
|
||||
dan
|
||||
<link linkend="api.config.load"><varname>config_load()</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,459 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.foreach">
|
||||
<title>{foreach},{foreachelse}</title>
|
||||
<para>
|
||||
<varname>{foreach}</varname> dipakai untuk mengulang terus-menerus melalui
|
||||
<emphasis role="bold">array asosiatif</emphasis> juga array-diindeks secara
|
||||
numerik, tidak seperti <link linkend="language.function.section"><varname>{section}</varname></link>
|
||||
yang untuk mengulang melalui <emphasis role="bold">hanya array-diindeks secara numerik</emphasis>.
|
||||
Sintaks untuk
|
||||
<varname>{foreach}</varname> jauh lebih mudah daripada
|
||||
<link linkend="language.function.section"><varname>{section}</varname></link>,
|
||||
tapi sebagai imbalannya <emphasis role="bold">hanya bisa dipakai untuk array
|
||||
tunggal</emphasis>. Setiap tag <varname>{foreach}</varname> harus
|
||||
dipasangkan dengan tag <varname>{/foreach}</varname> penutup.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Attribute Name</entry>
|
||||
<entry>Type</entry>
|
||||
<entry>Required</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Description</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>from</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Yes</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array yang anda ulang terus</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>item</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Yes</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama variabel yang jadi elemen saat ini</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>key</entry>
|
||||
<entry>string</entry>
|
||||
<entry>No</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama variabel yang saat ini jadi kunci</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>No</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama perulangan foreach untuk mengakses properti</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Atribut yang diperlukan adalah <parameter>from</parameter> dan <parameter>item</parameter>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<parameter>Name</parameter> dari pengulangan <varname>{foreach}</varname>
|
||||
bisa apa saja yang anda sukai, terdiri dari huruf, angka dan garis bawah,
|
||||
seperti
|
||||
<ulink url="&url.php-manual;language.variables">variabel PHP</ulink>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Pengulangan <varname>{foreach}</varname> bisa diulang terus, dan nama
|
||||
<varname>{foreach}</varname> yang diulang harus unik dari yang lain.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Atribut <parameter>from</parameter>, biasanya sebuah array nilai,
|
||||
menetapkan jumlah berapa kali <varname>{foreach}</varname> akan diulang.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<varname>{foreachelse}</varname> dijalankan ketika tidak ada nilai dalam
|
||||
variabel <parameter>from</parameter>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Pengulangan <varname>{foreach}</varname> juga memiliki variabelnya
|
||||
sendiri yang menangani properti. Ini diakses dengan:
|
||||
<link linkend="language.variables.smarty.loops">
|
||||
<parameter>{$smarty.foreach.name.property}</parameter></link> dengan
|
||||
<quote>name</quote> menjadi atribut
|
||||
<parameter>name</parameter>.
|
||||
</para>
|
||||
<note>
|
||||
<title>Catatan</title>
|
||||
<para>Atribut <parameter>name</parameter> hanya diperlukan saat anda ingin
|
||||
mengakses properti <varname>{foreach</varname>}, tidak seperti
|
||||
<link linkend="language.function.section"><varname>{section}</varname></link>.
|
||||
Mengakses properti <varname>{foreach}</varname> dengan <parameter>name</parameter>
|
||||
tidak terdefinisi tidak menimbulkan kesalahan, tapi sebaliknya
|
||||
mengakibatkan hasil yang tidak diinginkan.
|
||||
</para>
|
||||
</note>
|
||||
</listitem>
|
||||
|
||||
<listitem><para>
|
||||
Properti <varname>{foreach}</varname> adalah
|
||||
<link linkend="foreach.property.index"><parameter>index</parameter></link>,
|
||||
<link linkend="foreach.property.iteration"><parameter>iteration</parameter></link>,
|
||||
<link linkend="foreach.property.first"><parameter>first</parameter></link>,
|
||||
<link linkend="foreach.property.last"><parameter>last</parameter></link>,
|
||||
<link linkend="foreach.property.show"><parameter>show</parameter></link>,
|
||||
<link linkend="foreach.property.total"><parameter>total</parameter></link>.
|
||||
</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>Atribut <parameter>item</parameter></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$arr = array(1000, 1001, 1002);
|
||||
$smarty->assign('myArray', $arr);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template untuk ditampilkan <parameter>$myArray</parameter> dalam daftar tidak-berurut</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<ul>
|
||||
{foreach from=$myArray item=foo}
|
||||
<li>{$foo}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<ul>
|
||||
<li>1000</li>
|
||||
<li>1001</li>
|
||||
<li>1002</li>
|
||||
</ul>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Mendemonstrasikan atribut <parameter>item</parameter> dan <parameter>key</parameter></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$arr = array(9 => 'Tennis', 3 => 'Swimming', 8 => 'Coding');
|
||||
$smarty->assign('myArray', $arr);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template untuk ditampilkan <parameter>$myArray</parameter> sebagai
|
||||
pasangan kunci/nilai, seperti
|
||||
<ulink url="&url.php-manual;foreach"><varname>foreach</varname></ulink>
|
||||
PHP.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<ul>
|
||||
{foreach from=$myArray key=k item=v}
|
||||
<li>{$k}: {$v}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<ul>
|
||||
<li>9: Tennis</li>
|
||||
<li>3: Swimming</li>
|
||||
<li>8: Coding</li>
|
||||
</ul>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>{foreach} dengan asosiatif atribut <parameter>item</parameter></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$items_list = array(23 => array('no' => 2456, 'label' => 'Salad'),
|
||||
96 => array('no' => 4889, 'label' => 'Cream')
|
||||
);
|
||||
$smarty->assign('items', $items_list);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template untuk ditampilkan <parameter>$items</parameter> dengan
|
||||
<parameter>$myId</parameter> dalam url</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<ul>
|
||||
{foreach from=$items key=myId item=i}
|
||||
<li><a href="item.php?id={$myId}">{$i.no}: {$i.label}</li>
|
||||
{/foreach}
|
||||
</ul>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<ul>
|
||||
<li><a href="item.php?id=23">2456: Salad</li>
|
||||
<li><a href="item.php?id=96">4889: Cream</li>
|
||||
</ul>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>{foreach} dengan pengulangan <parameter>item</parameter> dan <parameter>key</parameter></title>
|
||||
<para>Menempatkan array ke Smarty, kunci berisi kunci untuk setiap nilai
|
||||
yang diulang.</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('contacts', array(
|
||||
array('phone' => '1',
|
||||
'fax' => '2',
|
||||
'cell' => '3'),
|
||||
array('phone' => '555-4444',
|
||||
'fax' => '555-3333',
|
||||
'cell' => '760-1234')
|
||||
));
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template yang menampilkan <parameter>$contact</parameter>.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{foreach name=outer item=contact from=$contacts}
|
||||
<hr />
|
||||
{foreach key=key item=item from=$contact}
|
||||
{$key}: {$item}<br />
|
||||
{/foreach}
|
||||
{/foreach}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh diatas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<hr />
|
||||
phone: 1<br />
|
||||
fax: 2<br />
|
||||
cell: 3<br />
|
||||
<hr />
|
||||
phone: 555-4444<br />
|
||||
fax: 555-3333<br />
|
||||
cell: 760-1234<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Contoh database dengan {foreachelse}</title>
|
||||
<para>Contoh database (seperti PEAR atau ADODB) dari naskah pencarian, hasil query
|
||||
ditempatkan ke Smarty</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$search_condition = "where name like '$foo%' ";
|
||||
$sql = 'select contact_id, name, nick from contacts '.$search_condition.' order by name';
|
||||
$smarty->assign('results', $db->getAssoc($sql) );
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template yang menampilkan <quote>None found</quote>
|
||||
jika tidak ada hasil dengan <varname>{foreachelse}</varname>.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{foreach key=cid item=con from=$results}
|
||||
<a href="contact.php?contact_id={$cid}">{$con.name} - {$con.nick}</a><br />
|
||||
{foreachelse}
|
||||
No items were found in the search
|
||||
{/foreach}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<sect2 id="foreach.property.index">
|
||||
<title>.index</title>
|
||||
<para>
|
||||
<parameter>index</parameter> berisi indeks array saat ini, dimulai dengan nol.
|
||||
</para>
|
||||
<example>
|
||||
<title>contoh <parameter>index</parameter></title>
|
||||
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
{* Blok header ditampilkan setiap lima baris *}
|
||||
<table>
|
||||
{foreach from=$items key=myId item=i name=foo}
|
||||
{if $smarty.foreach.foo.index % 5 == 0}
|
||||
<tr><th>Title</th></tr>
|
||||
{/if}
|
||||
<tr><td>{$i.label}</td></tr>
|
||||
{/foreach}
|
||||
</table>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="foreach.property.iteration">
|
||||
<title>.iteration</title>
|
||||
<para>
|
||||
<parameter>iteration</parameter> berisi iterasi perulangan saat ini dan
|
||||
selalu dimulai dari satu, tidak seperti
|
||||
<link linkend="foreach.property.index"><parameter>indeks</parameter></link>.
|
||||
Ia bertambah satu setiap kali iterasi.
|
||||
</para>
|
||||
<example>
|
||||
<title>contoh <parameter>iteration</parameter> dan <parameter>indeks</parameter></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
{* ini akan menampilkan 0|1, 1|2, 2|3, ... dst *}
|
||||
{foreach from=$myArray item=i name=foo}
|
||||
{$smarty.foreach.foo.index}|{$smarty.foreach.foo.iteration},
|
||||
{/foreach}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
</sect2>
|
||||
|
||||
<sect2 id="foreach.property.first">
|
||||
<title>.first</title>
|
||||
<para>
|
||||
<parameter>first</parameter> adalah &true; jika iterasi <varname>{foreach}</varname>
|
||||
saat ini adalah yang awal.
|
||||
</para>
|
||||
<example>
|
||||
<title>contoh properti <parameter>first</parameter></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
{* tampilkan LATEST pada item pertama, sebaliknya id *}
|
||||
<table>
|
||||
{foreach from=$items key=myId item=i name=foo}
|
||||
<tr>
|
||||
<td>{if $smarty.foreach.foo.first}LATEST{else}{$myId}{/if}</td>
|
||||
<td>{$i.label}</td>
|
||||
</tr>
|
||||
{/foreach}
|
||||
</table>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="foreach.property.last">
|
||||
<title>.last</title>
|
||||
<para>
|
||||
<parameter>last</parameter> disetel &true; jika iterasi
|
||||
<varname>{foreach}</varname> saat ini adalah yang terakhir.
|
||||
</para>
|
||||
<example>
|
||||
<title>contoh properti <parameter>last</parameter></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
{* Tambah garis horisontal di akhir daftar *}
|
||||
{foreach from=$items key=part_id item=prod name=products}
|
||||
<a href="#{$part_id}">{$prod}</a>{if $smarty.foreach.products.last}<hr>{else},{/if}
|
||||
{foreachelse}
|
||||
... konten ...
|
||||
{/foreach}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="foreach.property.show">
|
||||
<title>.show</title>
|
||||
<para>
|
||||
<parameter>show</parameter> dipakai sebagai parameter untuk <varname>{foreach}</varname>.
|
||||
<parameter>show</parameter> adalah nilai boolean. Jika &false;,
|
||||
<varname>{foreach}</varname> tidak akan ditampilkan. Jika terdapat
|
||||
<varname>{foreachelse}</varname>, akan ditampilkan secara selang-seling.
|
||||
</para>
|
||||
|
||||
</sect2>
|
||||
<sect2 id="foreach.property.total">
|
||||
<title>.total</title>
|
||||
<para>
|
||||
<parameter>total</parameter> berisi jumlah iterasi yang akan diulang
|
||||
<varname>{foreach}</varname>.
|
||||
Ini dapat digunakan di dalam atau setelah <varname>{foreach}</varname>.
|
||||
</para>
|
||||
<example>
|
||||
<title>contoh properti <parameter>total</parameter></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
{* menampilkan baris yang dikembalikan di akhir *}
|
||||
{foreach from=$items key=part_id item=prod name=foo}
|
||||
{$prod.name><hr/>
|
||||
{if $smarty.foreach.foo.last}
|
||||
<div id="total">{$smarty.foreach.foo.total} items</div>
|
||||
{/if}
|
||||
{foreachelse}
|
||||
... something else ...
|
||||
{/foreach}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga <link linkend="language.function.section"><varname>{section}</varname></link>
|
||||
dan <link linkend="language.variables.smarty.loops"><parameter>$smarty.foreach</parameter></link>.
|
||||
</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,263 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.if">
|
||||
<title>{if},{elseif},{else}</title>
|
||||
<para>
|
||||
Pernyataan <varname>{if}</varname> dalam Smarty memiliki kesamaan
|
||||
fleksibilitas seperti pernyataan PHP <ulink url="&url.php-manual;if">if</ulink>,
|
||||
dengan beberapa fitur yang ditambahkan untuk mesin template.
|
||||
Setiap <varname>{if}</varname> harus dipasangkan dengan
|
||||
<varname>{/if}</varname> yang sama. <varname>{else}</varname> dan
|
||||
<varname>{elseif}</varname> juga dibolehkan. Semua kondisional dan fungsi PHP
|
||||
dikenal, seperti <emphasis>||</emphasis>, <emphasis>or</emphasis>,
|
||||
<emphasis>&&</emphasis>, <emphasis>and</emphasis>,
|
||||
<emphasis>is_array()</emphasis>, dll.
|
||||
</para>
|
||||
<para>
|
||||
Jika <link linkend="variable.security"><parameter>$security</parameter></link>
|
||||
dihidupkan, hanya fungsi PHP dari array <emphasis>IF_FUNCS</emphasis> dari <link
|
||||
linkend="variable.security.settings"><parameter>$security_settings</parameter></link>
|
||||
yang dibolehkan.
|
||||
</para>
|
||||
<para>
|
||||
Berikut adalah daftar kualifikator yang dikenal yang harus dipisahkan dari
|
||||
elemen yang dikelilingi oleh spasi. Catatan bahwa item terdaftar dalam
|
||||
[kurung] adalah opsional. Persamaan PHP ditampilkan bila memungkinkan.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="4">
|
||||
<colspec colname="qualifier" align="center" />
|
||||
<colspec colname="alternates" align="center" />
|
||||
<colspec colname="meaning" />
|
||||
<colspec colname="example" />
|
||||
<colspec colname="php" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Kualifikator</entry>
|
||||
<entry>Pembeda</entry>
|
||||
<entry>Contoh Sintaks</entry>
|
||||
<entry>Arti</entry>
|
||||
<entry>Persamaan PHP</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>==</entry>
|
||||
<entry>eq</entry>
|
||||
<entry>$a eq $b</entry>
|
||||
<entry>sama</entry>
|
||||
<entry>==</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>!=</entry>
|
||||
<entry>ne, neq</entry>
|
||||
<entry>$a neq $b</entry>
|
||||
<entry>tidak sama</entry>
|
||||
<entry>!=</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>></entry>
|
||||
<entry>gt</entry>
|
||||
<entry>$a gt $b</entry>
|
||||
<entry>lebih besar dari</entry>
|
||||
<entry>></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><</entry>
|
||||
<entry>lt</entry>
|
||||
<entry>$a lt $b</entry>
|
||||
<entry>kurang dari</entry>
|
||||
<entry><</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>>=</entry>
|
||||
<entry>gte, ge</entry>
|
||||
<entry>$a ge $b</entry>
|
||||
<entry>lebih besar atau sama</entry>
|
||||
<entry>>=</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry><=</entry>
|
||||
<entry>lte, le</entry>
|
||||
<entry>$a le $b</entry>
|
||||
<entry>kurang dari atau sama</entry>
|
||||
<entry><=</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>===</entry>
|
||||
<entry></entry>
|
||||
<entry>$a === 0</entry>
|
||||
<entry>periksa identitas</entry>
|
||||
<entry>===</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>!</entry>
|
||||
<entry>not</entry>
|
||||
<entry>not $a</entry>
|
||||
<entry>negasi (unari)</entry>
|
||||
<entry>!</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>%</entry>
|
||||
<entry>mod</entry>
|
||||
<entry>$a mod $b</entry>
|
||||
<entry>modulus</entry>
|
||||
<entry>%</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>is [not] div by</entry>
|
||||
<entry></entry>
|
||||
<entry>$a is not div by 4</entry>
|
||||
<entry>bisa dibagi dengan</entry>
|
||||
<entry>$a % $b == 0</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>is [not] even</entry>
|
||||
<entry></entry>
|
||||
<entry>$a is not even</entry>
|
||||
<entry>[bukan] angka genap (unari)</entry>
|
||||
<entry>$a % 2 == 0</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>is [not] even by</entry>
|
||||
<entry></entry>
|
||||
<entry>$a is not even by $b</entry>
|
||||
<entry>tingkat pengelompokan [bukan] genap</entry>
|
||||
<entry>($a / $b) % 2 == 0</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>is [not] odd</entry>
|
||||
<entry></entry>
|
||||
<entry>$a is not odd</entry>
|
||||
<entry>[bukan] angka ganjil (unari)</entry>
|
||||
<entry>$a % 2 != 0</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>is [not] odd by</entry>
|
||||
<entry></entry>
|
||||
<entry>$a is not odd by $b</entry>
|
||||
<entry>[bukan] pengelompokan ganjil</entry>
|
||||
<entry>($a / $b) % 2 != 0</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
<example>
|
||||
<title>pernyataan {if}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{if $name eq 'Fred'}
|
||||
Welcome Sir.
|
||||
{elseif $name eq 'Wilma'}
|
||||
Welcome Ma'am.
|
||||
{else}
|
||||
Welcome, whatever you are.
|
||||
{/if}
|
||||
|
||||
{* contoh dengan logika "or" *}
|
||||
{if $name eq 'Fred' or $name eq 'Wilma'}
|
||||
...
|
||||
{/if}
|
||||
|
||||
{* sama seperti di atas *}
|
||||
{if $name == 'Fred' || $name == 'Wilma'}
|
||||
...
|
||||
{/if}
|
||||
|
||||
|
||||
{* kurung buka/tutup dibolehkan *}
|
||||
{if ( $amount < 0 or $amount > 1000 ) and $volume >= #minVolAmt#}
|
||||
...
|
||||
{/if}
|
||||
|
||||
|
||||
{* anda juga bisa menyertakan fungsi panggil php *}
|
||||
{if count($var) gt 0}
|
||||
...
|
||||
{/if}
|
||||
|
||||
{* periksa array. *}
|
||||
{if is_array($foo) }
|
||||
.....
|
||||
{/if}
|
||||
|
||||
{* periksa untuk yang bukan null. *}
|
||||
{if isset($foo) }
|
||||
.....
|
||||
{/if}
|
||||
|
||||
|
||||
{* uji apakah nilai genap atau ganjil *}
|
||||
{if $var is even}
|
||||
...
|
||||
{/if}
|
||||
{if $var is odd}
|
||||
...
|
||||
{/if}
|
||||
{if $var is not odd}
|
||||
...
|
||||
{/if}
|
||||
|
||||
|
||||
{* uji apakah var bisa dibagi dengan 4 *}
|
||||
{if $var is div by 4}
|
||||
...
|
||||
{/if}
|
||||
|
||||
|
||||
{*
|
||||
uji apakah var genap, dikelompokan oleh dua. misalnya,
|
||||
0=even, 1=even, 2=odd, 3=odd, 4=even, 5=even, dst.
|
||||
*}
|
||||
{if $var is even by 2}
|
||||
...
|
||||
{/if}
|
||||
|
||||
{* 0=even, 1=even, 2=even, 3=odd, 4=odd, 5=odd, etc. *}
|
||||
{if $var is even by 3}
|
||||
...
|
||||
{/if}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>contoh {if} berikutnya</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{if isset($name) && $name == 'Blog'}
|
||||
{* lakukan sesuatu *}
|
||||
{elseif $name == $foo}
|
||||
{* lakukan sesuatu *}
|
||||
{/if}
|
||||
|
||||
{if is_array($foo) && count($foo) > 0)
|
||||
{* lakukan untuk setiap pengulangan *}
|
||||
{/if}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,148 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.include.php">
|
||||
<title>{include_php}</title>
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
<varname>{include_php}</varname> tidak lagi dipakai oleh Smarty, anda bisa
|
||||
melakukan fungsionalitas yang sama melalui fungsi template kustom.
|
||||
Satu-satunya alasan untuk menggunakan <varname>{include_php}</varname>
|
||||
adalah jika anda benar-benar perlu untuk mengkarantina fungsi php jauh
|
||||
dari direktori
|
||||
<link linkend="variable.plugins.dir"><filename>plugins/</filename></link>
|
||||
atau kode aplikasi anda. Lihat <link
|
||||
linkend="tips.componentized.templates">contoh mengkomponenkan template
|
||||
</link> agar lebih jelas.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>file</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama file php untuk disertakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>once</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&true;</emphasis></entry>
|
||||
<entry>Apakah file php perlu disertakan lebih dari sekali atau tidak
|
||||
jika disertakan berkali-kali</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama variabel yang outputnya akan ditempati oleh include_php</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<para>
|
||||
Tag <varname>{include_php}</varname> dipakai untuk menyertakan naskah php
|
||||
dalam template anda.
|
||||
Jika <link linkend="variable.security"><parameter>$security</parameter></link> dihidupkan,
|
||||
maka naskah php harus ditempatkan dalam path <link
|
||||
linkend="variable.trusted.dir"><parameter>$trusted_dir</parameter></link>.
|
||||
Tag <varname>{include_php}</varname> harus mempunyai atribut
|
||||
<parameter>file</parameter>, yang berisi path ke file php yang disertakan, baik
|
||||
relatif ke <link linkend="variable.trusted.dir"><parameter>$trusted_dir</parameter></link>,
|
||||
ataupun path absolut.
|
||||
</para>
|
||||
<para>
|
||||
Standarnya, file php hanya disertakan sekali meskipun dipanggil
|
||||
berkali-kali dalam template. Anda dapat menetapkan bahwa ia harus
|
||||
disertakan setiap kali dengan atribut <parameter>once</parameter>.
|
||||
Setelan once ke &false; akan menyertakan naskah php setiap kali ia
|
||||
disertakan dalam template.
|
||||
</para>
|
||||
<para>
|
||||
Secara opsional anda bisa mengirimkan atribut <parameter>assign</parameter>,
|
||||
yang akan menetapkan nama variabel yang outputnya akan
|
||||
<varname>{include_php}</varname> tempati daripada ditampilkan.
|
||||
</para>
|
||||
<para>
|
||||
Obyek smarty tersedia sebagai <parameter>$this</parameter> di dalam
|
||||
naskah PHP yang anda sertakan.
|
||||
</para>
|
||||
<example>
|
||||
<title>fungsi {include_php}</title>
|
||||
<para>File <filename>load_nav.php</filename>:</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// ambil variabel dari mysql db dan tempatkan ke template
|
||||
require_once('database.class.php');
|
||||
$db = new Db();
|
||||
$db->query('select url, name from navigation order by name');
|
||||
$this->assign('navigation', $db->getRows());
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* path absolut, atau relatif ke $trusted_dir *}
|
||||
{include_php file='/path/to/load_nav.php'}
|
||||
|
||||
{foreach item='nav' from=$navigation}
|
||||
<a href="{$nav.url}">{$nav.name}</a><br />
|
||||
{/foreach}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga <link linkend="language.function.include"><varname>{include}</varname></link>,
|
||||
<link linkend="variable.security"><parameter>$security</parameter></link>,
|
||||
<link linkend="variable.trusted.dir"><parameter>$trusted_dir</parameter></link>,
|
||||
<link linkend="language.function.php"><varname>{php}</varname></link>, <link
|
||||
linkend="language.function.capture"><varname>{capture}</varname></link>, <link
|
||||
linkend="template.resources">sumber daya</link> dan <link
|
||||
linkend="tips.componentized.templates">mengkomponenkan template</link> </para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,216 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.include">
|
||||
<title>{include}</title>
|
||||
<para>
|
||||
Tag <varname>{include}</varname> dipakai untuk menyertakan template lain
|
||||
dalam template saat ini. Setiap variabel yang tersedia dalam template
|
||||
saat ini juga tersedia di dalam template yang disertakan.
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Tag <varname>{include}</varname> harus mempunyai atribut
|
||||
<parameter>file</parameter> yang berisi path sumber daya template.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Menyetel atribut opsional <parameter>assign</parameter> menetapkan variabel
|
||||
template yang menempatkan <varname>{include}</varname> ke output, daripada
|
||||
ditampilkan. Mirip dengan
|
||||
<link linkend="language.function.assign"><varname>{assign}</varname></link>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Variabel bisa dikirimkan ke template yang disertakan sebagai
|
||||
<link linkend="language.syntax.attributes">atribut</link>.
|
||||
Setiap variabel yang dikirimkan secara eksplisit ke template
|
||||
yang disertakan hanya tersedia di dalam lingkup file yang
|
||||
disertakan. Variabel atribut menimpa variabel template saat
|
||||
ini, dalam hal ketika bernama sama.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Semua nilai variabel yang ditempatkan dikembalikan setelah lingkup
|
||||
template yang disertakan tidak ada. Ini berarti anda dapat menggunakan
|
||||
semua variabel termasuk template di dalam template yang disertakan.
|
||||
Tapi perubahan variabel di dalam template yang disertakan tidak terlihat
|
||||
di dalam template yang menyertakan setelah pernyataan
|
||||
<varname>{include}</varname>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Gunakan sintaks <link linkend="template.resources">sumber daya template</link>
|
||||
untuk <varname>{include}</varname> file di luar direktori
|
||||
<link linkend="variable.template.dir"><parameter>$template_dir</parameter></link>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>file</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama file template yang disertakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama variabel yang outputnya akan ditempati</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>[var ...]</entry>
|
||||
<entry>[var type]</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>variabel untuk mengirimkan lokal ke template</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>Contoh {include} sederhana</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<html>
|
||||
<head>
|
||||
<title>{$title}</title>
|
||||
</head>
|
||||
<body>
|
||||
{include file='page_header.tpl'}
|
||||
|
||||
{* badan template di sini, variabel $tpl_name diganti dengan
|
||||
nilai misalnya 'contact.tpl'
|
||||
*}
|
||||
{include file="$tpl_name.tpl"}
|
||||
|
||||
{include file='page_footer.tpl'}
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>variabel pengiriman {include}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{include file='links.tpl' title='Newest links' links=$link_array}
|
||||
{* badan template di sini *}
|
||||
{include file='footer.tpl' foo='bar'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template di atas menyertakan contoh <filename>links.tpl</filename>
|
||||
di bawah ini.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<div id="box">
|
||||
<h3>{$title}{/h3>
|
||||
<ul>
|
||||
{foreach from=$links item=l}
|
||||
.. do stuff ...
|
||||
</foreach}
|
||||
</ul>
|
||||
</div>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>{include} and assign to variable</title>
|
||||
<para>This example assigns the contents of <filename>nav.tpl</filename>
|
||||
to the <varname>$navbar</varname> variable,
|
||||
which is then output at both the top and bottom of the page.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<body>
|
||||
{include file='nav.tpl' assign=navbar}
|
||||
{include file='header.tpl' title='Smarty is cool'}
|
||||
{$navbar}
|
||||
{* badan template di sini *}
|
||||
{$navbar}
|
||||
{include file='footer.tpl'}
|
||||
</body>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Contoh berbagai sumber daya {include}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* path file absolut *}
|
||||
{include file='/usr/local/include/templates/header.tpl'}
|
||||
|
||||
{* path file absolut (hal yang sama) *}
|
||||
{include file='file:/usr/local/include/templates/header.tpl'}
|
||||
|
||||
{* path file windows absolut (HARUS menggunakan prefiks "file:") *}
|
||||
{include file='file:C:/www/pub/templates/header.tpl'}
|
||||
|
||||
{* sertakan dari sumber daya template bernama "db" *}
|
||||
{include file='db:header.tpl'}
|
||||
|
||||
{* sertakan $variable template - misal $module = 'contacts' *}
|
||||
{include file="$module.tpl"}
|
||||
|
||||
{* tidak akan bekerja karena tanda kutip tunggal, tidak ada penggantian variabel *}
|
||||
{include file='$module.tpl'}
|
||||
|
||||
{* sertakan template multi $variabel - misal amber/links.view.tpl *}
|
||||
{include file="$style_dir/$module.$view.tpl"}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.include.php"><varname>{include_php}</varname></link>,
|
||||
<link linkend="language.function.insert"><varname>{insert}</varname></link>,
|
||||
<link linkend="language.function.php"><varname>{php}</varname></link>,
|
||||
<link linkend="template.resources">sumber daya template</link> dan
|
||||
<link linkend="tips.componentized.templates">mengkomponenkan template</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,160 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.insert">
|
||||
<title>{insert}</title>
|
||||
<para>
|
||||
Tag <varname>{insert}</varname> bekerja sangat mirip dengan tag <link
|
||||
linkend="language.function.include"><varname>{include}</varname></link>,
|
||||
kecuali bahwa tag <varname>{insert}</varname> TIDAK di-cache ketika
|
||||
<link linkend="caching">caching</link> template dihidupkan. Ia akan
|
||||
dijalankan pada setiap permintaan template.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama fungsi insert (insert_name)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama variabel template yang outputnya akan ditempati</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>script</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama naskah php yang disertakan sebelum fungsi insert dipanggil</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>[var ...]</entry>
|
||||
<entry>[var type]</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>variabel untuk mengirimkan fungsi insert</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
|
||||
<para>
|
||||
Katakanlah anda mempunyai template dengan slot spanduk di atas halaman.
|
||||
Spanduk bisa berisi campuran HTML, gambar, flash, dll. maka kita tidak bisas
|
||||
cukup menggunakan link statis di sini, dan kita tidak ingin konten ini
|
||||
di-cache dengan halaman. Sampailah tag {insert}: template mengetahui
|
||||
#banner_location_id# dan nilai #site_id# (dikumpulkan dari
|
||||
<link linkend="config.files">file config</link>), dan perlu untuk
|
||||
memanggil fungsi guna memperoleh konten spanduk.
|
||||
</para>
|
||||
<example>
|
||||
<title>fungsi {insert}</title>
|
||||
<programlisting>
|
||||
{* contoh mengambil spanduk *}
|
||||
{insert name="getBanner" lid=#banner_location_id# sid=#site_id#}
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Pada contoh ini, kita menggunakan nama <quote>getBanner</quote> dan
|
||||
mengirimkan parameter #banner_location_id# dan #site_id#. Smarty akan
|
||||
mencari fungsi bernama insert_getBanner() dalam aplikasi PHP anda,
|
||||
mengirimkan nilai #banner_location_id# dan #site_id# sebagai argumen
|
||||
pertama dalam array asosiatif. Semua nama fungsi {insert} dalam aplikasi
|
||||
anda harus didahului dengan "insert_" guna menghindari kemungkinan
|
||||
konflik ruang-nama fungsi. Fungsi insert_getBanner() anda harus melakukan
|
||||
sesuatu dengan nilai yang dikirimkan dan mengembalikan hasil. Hasil ini
|
||||
kemudian ditampilkan dalam template di tempat tag {insert}. Dalam contoh
|
||||
ini, Smarty akan memanggil fungsi ini:
|
||||
insert_getBanner(array("lid" => "12345","sid" => "67890"));
|
||||
dan menampilkan hasil yang dikembalikan di tempat tag {insert}.
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Jika anda menyertakan atribut <parameter>assign</parameter>, output
|
||||
dari tag <varname>{insert}</varname> akan ditampati variabel template
|
||||
ini daripa menjadi output bagi template.
|
||||
<note>
|
||||
<para>
|
||||
Menempatkan output ke variabel template tidak terlalu berguna jika
|
||||
<link linkend="variable.caching">caching</link> dihidupkan.
|
||||
</para>
|
||||
</note>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Jika anda menyertakan atribut <parameter>script</parameter>, naskah php ini
|
||||
akan disertakan (hanya sekali) sebelum funsi <varname>{insert}</varname>
|
||||
dijalankan. Ini kasus di mana fungsi insert mungkin belum ada, dan naskah php
|
||||
harus disertakan lebih dulu agar ia bekerja.
|
||||
</para>
|
||||
<para>
|
||||
Path dapat berupa absolut, atau relatif ke
|
||||
<link linkend="variable.trusted.dir"><parameter>$trusted_dir</parameter></link>.
|
||||
Ketika <link linkend="variable.security"><parameter>$security</parameter></link>
|
||||
dihidupkan, naskah harus berada dalam
|
||||
<link linkend="variable.trusted.dir"><parameter>$trusted_dir</parameter></link>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
<para>
|
||||
Obyek Smarty dikriimkan sebagai argumen kedua. Dengan cara ini anda dapat
|
||||
mereferensi dan mengubah informasi dalam obyek Smarty dari dalam fungsi
|
||||
<varname>{insert}</varname>.
|
||||
</para>
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Dimungkinkan bagian template tidal di-cache. Jika anda menghidupkan
|
||||
<link linkend="caching">caching</link>, tag <varname>{insert}</varname>
|
||||
tidak akan di-cache. Ia akan dijalankan secara dinamis setiap kali
|
||||
halaman dibuat, bahkan di dalam halaman yang di-cache. Ini bekerja baik
|
||||
untuk hal-hal seperti spanduk, polling, laporan cuaca, hasil pencarian,
|
||||
area umpan balik pengguna, dll.
|
||||
</para>
|
||||
</note>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.include"><varname>{include}</varname></link>
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,97 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.ldelim">
|
||||
<title>{ldelim},{rdelim}</title>
|
||||
<para>
|
||||
<varname>{ldelim}</varname> dan <varname>{rdelim}</varname> dipakai untuk
|
||||
<link linkend="language.escaping">melepaskan</link> pembatas template,
|
||||
standarnya <emphasis role="bold">{</emphasis> dan <emphasis role="bold">}</emphasis>.
|
||||
Anda juga bisa memakai
|
||||
<link linkend="language.function.literal"><varname>{literal}{/literal}</varname></link>
|
||||
untuk membatasi blok teks misalnya Javascript atau CSS.
|
||||
Lihat juga <link
|
||||
linkend="language.variables.smarty.ldelim"><parameter>{$smarty.ldelim}</parameter></link>
|
||||
tambahan.
|
||||
</para>
|
||||
<example>
|
||||
<title>{ldelim}, {rdelim}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* ini akan mencetak pembatas literal keluar dari template *}
|
||||
|
||||
{ldelim}funcname{rdelim} adalah bagaimana fungsi terlihat dalam Smarty!
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menghasilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
{funcname} adalah bagaimana fungsi terlihat dalam Smarty!
|
||||
]]>
|
||||
</screen>
|
||||
<para>Contoh lain dengan beberapa Javascript</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<script language="JavaScript">
|
||||
function foo() {ldelim}
|
||||
... kode ...
|
||||
{rdelim}
|
||||
</script>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
akan menghasilkan
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<script language="JavaScript">
|
||||
function foo() {
|
||||
.... kode ...
|
||||
}
|
||||
</script>
|
||||
]]>
|
||||
</screen>
|
||||
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Contoh Javascript lain</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
function myJsFunction(){ldelim}
|
||||
alert("The server name\n{$smarty.server.SERVER_NAME}\n{$smarty.server.SERVER_ADDR}");
|
||||
{rdelim}
|
||||
</script>
|
||||
<a href="javascript:myJsFunction()">Click here for Server Info</a>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>Lihat juga
|
||||
<link linkend="language.function.literal"><varname>{literal}</varname></link>
|
||||
dan <link linkend="language.escaping">escaping penguraian Smarty</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,102 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.literal">
|
||||
<title>{literal}</title>
|
||||
<para>
|
||||
Tag <varname>{literal}</varname> membolehkan blok data diambil secara literal.
|
||||
Ini biasanya dipakai sekitar blok Javascript atau stylesheet di mana
|
||||
{kurung kurawal} akan berpengaruh dengan sintaks
|
||||
<link linkend="variable.left.delimiter">pembatas</link> template. Apapun di
|
||||
dalam tag <varname>{literal}{/literal}</varname> tidak diinterpretasikan, but displayed as-is.
|
||||
If you need template tags embedded in a <varname>{literal}</varname> block, consider using
|
||||
<link linkend="language.function.ldelim"><varname>{ldelim}{rdelim}</varname></link> to escape the
|
||||
individual delimiters instead.
|
||||
</para>
|
||||
|
||||
<example>
|
||||
<title>{literal} tags</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{literal}
|
||||
<script type="text/javascript">
|
||||
<!--
|
||||
function isblank(field) {
|
||||
if (field.value == '')
|
||||
{ return false; }
|
||||
else
|
||||
{
|
||||
document.loginform.submit();
|
||||
return true;
|
||||
}
|
||||
}
|
||||
// -->
|
||||
</script>
|
||||
{/literal}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Javascript function example</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<script language="JavaScript" type="text/javascript">
|
||||
{literal}
|
||||
function myJsFunction(name, ip){
|
||||
alert("The server name\n" + name + "\n" + ip);
|
||||
}
|
||||
{/literal}
|
||||
</script>
|
||||
<a href="javascript:myJsFunction('{$smarty.server.SERVER_NAME}','{$smarty.server.SERVER_ADDR}')">Click here for the Server Info</a>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Some css style in a template</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* included this style .. as an experiment *}
|
||||
<style type="text/css">
|
||||
{literal}
|
||||
/* this is an intersting idea for this section */
|
||||
.madIdea{
|
||||
border: 3px outset #ffffff;
|
||||
margin: 2 3 4 5px;
|
||||
background-color: #001122;
|
||||
}
|
||||
{/literal}
|
||||
</style>
|
||||
<div class="madIdea">With smarty you can embed CSS in the template</div>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
See also
|
||||
<link linkend="language.function.ldelim"><varname>{ldelim} {rdelim}</varname></link>
|
||||
and the
|
||||
<link linkend="language.escaping">escaping Smarty parsing</link> page.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,82 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.php">
|
||||
<title>{php}</title>
|
||||
<para>
|
||||
Tag <varname>{php}</varname> membolehkan kode PHP untuk disertakan secara
|
||||
langsung ke dalam template. Ia tidak akan diberi escape, mengabaikan setelan <link
|
||||
linkend="variable.php.handling"><parameter>$php_handling</parameter></link>.
|
||||
Ini hanya untuk pengguna tingkat lanjut, normalnya tidak perlukan dan
|
||||
tidak direkomendasikan.
|
||||
</para>
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Untuk mengakses variabel PHP dalam blok <varname>{php}</varname> anda perlu
|
||||
menggunakan kata kunci
|
||||
<ulink url="&url.php-manual;global"><literal>global</literal></ulink>.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<example>
|
||||
<title>kode php dalam tag {php}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{php}
|
||||
// menyertakan naskah php secara langsung dari template.
|
||||
include('/path/to/display_weather.php');
|
||||
{/php}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>tag {php} dengan variabel global dan penempatan</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
{* template ini menyertakan blok {php} yang menempatkan variabel $varX *}
|
||||
{php}
|
||||
global $foo, $bar;
|
||||
if($foo == $bar){
|
||||
echo 'This will be sent to browser';
|
||||
}
|
||||
// tempatkan variabel ke Smarty
|
||||
$this->assign('varX','Toffee');
|
||||
{/php}
|
||||
{* keluarkan variabel *}
|
||||
<strong>{$varX}</strong> is my fav ice cream :-)
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="variable.php.handling"><parameter>$php_handling</parameter></link>,
|
||||
<link linkend="language.function.include.php"><varname>{include_php}</varname></link>,
|
||||
<link linkend="language.function.include"><varname>{include}</varname></link>,
|
||||
<link linkend="language.function.insert"><varname>{insert}</varname></link>
|
||||
dan
|
||||
<link linkend="tips.componentized.templates">template yang dikomponenkan</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,826 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.section">
|
||||
<title>{section},{sectionelse}</title>
|
||||
<para>
|
||||
<varname>{section}</varname>
|
||||
adalah untuk mengulang melalui <emphasis role="bold">array data</emphasis>,
|
||||
tidak seperti <link linkend="language.function.foreach"><varname>{foreach}</varname></link>
|
||||
yang dipakai untuk mengulang melalui
|
||||
<emphasis role="bold">satu array asosiatif</emphasis>.
|
||||
Setiap <varname>{section}</varname> tag harus dipasangkan dengan
|
||||
penutup<varname>{/section}</varname> tag.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama seksi</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>loop</entry>
|
||||
<entry>mixed</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nilai untuk menentukan sumber iterasi pengulangan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>start</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>0</emphasis></entry> <entry>Posisi indeks
|
||||
di mana seksi akan diulang. Jika nilai negatif, awal
|
||||
posisi dihitung dari akhir array. Sebagai contoh,
|
||||
jika ada tujuh nilai dalam pengulangan array dan awalnya
|
||||
adalah -2, indeks awal adalah 5. Nilai yang tidak benar
|
||||
(nilai di luar panjang pengulangan array) otomatis
|
||||
dipotong ke nilai terdekat yang benar.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>step</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>1</emphasis></entry>
|
||||
<entry>Nilai step akan dipakai untuk melewati pengulangan array.
|
||||
Sebagai contoh, step=2 akan berulang pada indeks 0,2,4, dst.
|
||||
Jika step negatif, ia akan mundur kembali melewati array.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>max</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Menyetel angka maksimum berapa kali seksi akan mengulang.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>show</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&true;</emphasis></entry>
|
||||
<entry>Menentukan apakan menampilkan seksi ini atau tidak</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Atribut yang diperlukan adalah <parameter>name</parameter> dan <parameter>loop</parameter>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<parameter>name</parameter> dari <varname>{section}</varname> bisa berupa
|
||||
apapun yang anda suka, terdiri dari huruf, angka dan garis bawah, seperti
|
||||
<ulink url="&url.php-manual;language.variables">variabel PHP</ulink>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
{section} dapat diulang, dan nama <varname>{section}</varname> yang diulang
|
||||
harus unik dari yang lainnya.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Atribut <parameter>loop</parameter>, biasanya sebuah array nilai, menentukan
|
||||
jumlah berapa kali <varname>{section}</varname> akan mengulang. Anda juga
|
||||
dapat mengirimkan integer sebagai nilai pengulangan.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>Ketika mencetak variabel di dalam <varname>{section}</varname>,
|
||||
<varname>{section}</varname> <parameter>name</parameter> harus diberikan di
|
||||
sebelah nama variabel dalam [kurung kotak].
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<varname>{sectionelse}</varname> dijalankan saat tidak ada lagi nilai
|
||||
dalam variabel loop.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<varname>{section}</varname> juga memiliki variabelnya sendiri yang
|
||||
menangani properti <varname>{section}</varname>.
|
||||
Properti ini dapat diakses sebagai: <link linkend="language.variables.smarty.loops">
|
||||
<parameter>{$smarty.section.name.property}</parameter></link>
|
||||
di mana <quote>name</quote> adalah atribut <parameter>name</parameter>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
properti <varname>{section}</varname> adalah
|
||||
<link linkend="section.property.index"><parameter>index</parameter></link>,
|
||||
<link linkend="section.property.index.prev"><parameter>index_prev</parameter></link>,
|
||||
<link linkend="section.property.index.next"><parameter>index_next</parameter></link>,
|
||||
<link linkend="section.property.iteration"><parameter>iteration</parameter></link>,
|
||||
<link linkend="section.property.first"><parameter>first</parameter></link>,
|
||||
<link linkend="section.property.last"><parameter>last</parameter></link>,
|
||||
<link linkend="section.property.rownum"><parameter>rownum</parameter></link>,
|
||||
<link linkend="section.property.loop"><parameter>loop</parameter></link>,
|
||||
<link linkend="section.property.show"><parameter>show</parameter></link>,
|
||||
<link linkend="section.property.total"><parameter>total</parameter></link>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>Mengulang array sederhana dengan {section}</title>
|
||||
<para>
|
||||
<link linkend="api.assign"><varname>assign()</varname></link> array ke Smarty
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$data = array(1000,1001,1002);
|
||||
$smarty->assign('custid',$data);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template yang menampilkan array</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* contoh ini akan mengeluarkan semua nilai dari array $custid *}
|
||||
{section name=customer loop=$custid}
|
||||
id: {$custid[customer]}<br />
|
||||
{/section}
|
||||
<hr />
|
||||
{* mengeluarkan semua nilai array $custid secara terbalik *}
|
||||
{section name=foo loop=$custid step=-1}
|
||||
{$custid[foo]}<br />
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
id: 1000<br />
|
||||
id: 1001<br />
|
||||
id: 1002<br />
|
||||
<hr />
|
||||
id: 1002<br />
|
||||
id: 1001<br />
|
||||
id: 1000<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>{section} tanpa array yang ditempati</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=foo start=10 loop=20 step=2}
|
||||
{$smarty.section.foo.index}
|
||||
{/section}
|
||||
<hr />
|
||||
{section name=bar loop=21 max=6 step=-2}
|
||||
{$smarty.section.bar.index}
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
10 12 14 16 18
|
||||
<hr />
|
||||
20 18 16 14 12 10
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>Penamaan {section}</title>
|
||||
<para><parameter>name</parameter> dari <varname>{section}</varname> bisa apa
|
||||
saja sesuai yang anda inginkan, lihat
|
||||
<ulink url="&url.php-manual;language.variables">variabel PHP</ulink>.
|
||||
Ini dipakai untuk mereferensi data di dalam <varname>{section}</varname>.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=anything loop=$myArray}
|
||||
{$myArray[anything].foo}
|
||||
{$name[anything]}
|
||||
{$address[anything].bar}
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>Pengulangan array asosiatif dengan {section}</title>
|
||||
<para>Ini adalah contoh pencetakan array data asosiatif dengan
|
||||
<varname>{section}</varname>. Berikut adalah naskah php untuk menempatkan
|
||||
array <parameter>$contacts</parameter> ke Smarty.</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$data = array(
|
||||
array('name' => 'John Smith', 'home' => '555-555-5555',
|
||||
'cell' => '666-555-5555', 'email' => 'john@myexample.com'),
|
||||
array('name' => 'Jack Jones', 'home' => '777-555-5555',
|
||||
'cell' => '888-555-5555', 'email' => 'jack@myexample.com'),
|
||||
array('name' => 'Jane Munson', 'home' => '000-555-5555',
|
||||
'cell' => '123456', 'email' => 'jane@myexample.com')
|
||||
);
|
||||
$smarty->assign('contacts',$data);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
<para>Template untuk menampilkan <parameter>$contacts</parameter></para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$contacts}
|
||||
<p>
|
||||
name: {$contacts[customer].name}<br />
|
||||
home: {$contacts[customer].home}<br />
|
||||
cell: {$contacts[customer].cell}<br />
|
||||
e-mail: {$contacts[customer].email}
|
||||
</p>
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<p>
|
||||
name: John Smith<br />
|
||||
home: 555-555-5555<br />
|
||||
cell: 666-555-5555<br />
|
||||
e-mail: john@myexample.com
|
||||
</p>
|
||||
<p>
|
||||
name: Jack Jones<br />
|
||||
home phone: 777-555-5555<br />
|
||||
cell phone: 888-555-5555<br />
|
||||
e-mail: jack@myexample.com
|
||||
</p>
|
||||
<p>
|
||||
name: Jane Munson<br />
|
||||
home phone: 000-555-5555<br />
|
||||
cell phone: 123456<br />
|
||||
e-mail: jane@myexample.com
|
||||
</p>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>{section} mendemonstrasikan variabel <varname>loop</varname></title>
|
||||
<para>Contoh ini mengasumsikan bahwa <parameter>$custid</parameter>, <parameter>$name</parameter>
|
||||
dan <parameter>$address</parameter> adalah semua array yang berisi jumlah
|
||||
nilai yang sama. Pertama naskah php menempatkan array ke Smarty.</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$id = array(1001,1002,1003);
|
||||
$smarty->assign('custid',$id);
|
||||
|
||||
$fullnames = array('John Smith','Jack Jones','Jane Munson');
|
||||
$smarty->assign('name',$fullnames);
|
||||
|
||||
$addr = array('253 Abbey road', '417 Mulberry ln', '5605 apple st');
|
||||
$smarty->assign('address',$addr);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Variabel <parameter>loop</parameter> hanya menentukan jumlah berapa kali
|
||||
untuk mengulang. Anda dapat mengakses variabel MANAPUN dari template di dalam
|
||||
<varname>{section}</varname></para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$custid}
|
||||
<p>
|
||||
id: {$custid[customer]}<br />
|
||||
name: {$name[customer]}<br />
|
||||
address: {$address[customer]}
|
||||
</p>
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<p>
|
||||
id: 1000<br />
|
||||
name: John Smith<br />
|
||||
address: 253 Abbey road
|
||||
</p>
|
||||
<p>
|
||||
id: 1001<br />
|
||||
name: Jack Jones<br />
|
||||
address: 417 Mulberry ln
|
||||
</p>
|
||||
<p>
|
||||
id: 1002<br />
|
||||
name: Jane Munson<br />
|
||||
address: 5605 apple st
|
||||
</p>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
|
||||
|
||||
<example>
|
||||
<title>{section} yang berulang</title>
|
||||
<para>
|
||||
{section} dapat diulang sedalam yang anda suka. Dengan {section} yang
|
||||
diulang, anda bisa mengakses struktur data yang kompleks, seperti array
|
||||
multi dimensi. Ini adalah contoh naskah <filename>.php</filename> yang
|
||||
menempatkan array.
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$id = array(1001,1002,1003);
|
||||
$smarty->assign('custid',$id);
|
||||
|
||||
$fullnames = array('John Smith','Jack Jones','Jane Munson');
|
||||
$smarty->assign('name',$fullnames);
|
||||
|
||||
$addr = array('253 N 45th', '417 Mulberry ln', '5605 apple st');
|
||||
$smarty->assign('address',$addr);
|
||||
|
||||
$types = array(
|
||||
array( 'home phone', 'cell phone', 'e-mail'),
|
||||
array( 'home phone', 'web'),
|
||||
array( 'cell phone')
|
||||
);
|
||||
$smarty->assign('contact_type', $types);
|
||||
|
||||
$info = array(
|
||||
array('555-555-5555', '666-555-5555', 'john@myexample.com'),
|
||||
array( '123-456-4', 'www.example.com'),
|
||||
array( '0457878')
|
||||
);
|
||||
$smarty->assign('contact_info', $info);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Dalam contoh ini, <emphasis>$contact_type[customer]</emphasis> adalah
|
||||
sebuah array tipe kontak untuk kustomer saat ini.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$custid}
|
||||
<hr>
|
||||
id: {$custid[customer]}<br />
|
||||
name: {$name[customer]}<br />
|
||||
address: {$address[customer]}<br />
|
||||
{section name=contact loop=$contact_type[customer]}
|
||||
{$contact_type[customer][contact]}: {$contact_info[customer][contact]}<br />
|
||||
{/section}
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<hr>
|
||||
id: 1000<br />
|
||||
name: John Smith<br />
|
||||
address: 253 N 45th<br />
|
||||
home phone: 555-555-5555<br />
|
||||
cell phone: 666-555-5555<br />
|
||||
e-mail: john@myexample.com<br />
|
||||
<hr>
|
||||
id: 1001<br />
|
||||
name: Jack Jones<br />
|
||||
address: 417 Mulberry ln<br />
|
||||
home phone: 123-456-4<br />
|
||||
web: www.example.com<br />
|
||||
<hr>
|
||||
id: 1002<br />
|
||||
name: Jane Munson<br />
|
||||
address: 5605 apple st<br />
|
||||
cell phone: 0457878<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
|
||||
<example>
|
||||
<title>Contoh database dengan {sectionelse}</title>
|
||||
<para>Hasil pencarian database (misal ADODB atau PEAR) ditempatkan ke Smarty</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$sql = 'select id, name, home, cell, email from contacts '
|
||||
."where name like '$foo%' ";
|
||||
$smarty->assign('contacts', $db->getAll($sql));
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template yang menampilkan hasil database dalam tabel HTML</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<table>
|
||||
<tr><th> </th><th>Name></th><th>Home</th><th>Cell</th><th>Email</th></tr>
|
||||
{section name=co loop=$contacts}
|
||||
<tr>
|
||||
<td><a href="view.php?id={$contacts[co].id}">view<a></td>
|
||||
<td>{$contacts[co].name}</td>
|
||||
<td>{$contacts[co].home}</td>
|
||||
<td>{$contacts[co].cell}</td>
|
||||
<td>{$contacts[co].email}</td>
|
||||
<tr>
|
||||
{sectionelse}
|
||||
<tr><td colspan="5">Tidak ada item yang ditemukan</td></tr>
|
||||
{/section}
|
||||
</table>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<sect2 id="section.property.index">
|
||||
<title>.index</title>
|
||||
<para>
|
||||
<parameter>index</parameter> berisi indeks array saat ini, dimulai dengan nol
|
||||
atau atribut <parameter>start</parameter> bila diberikan. Ia bertambah satu
|
||||
atau dengan atribut <parameter>step</parameter> bila diberikan.
|
||||
</para>
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Jika properti <parameter>step</parameter> dan <parameter>start</parameter>
|
||||
tidak diubah, maka pekerjaan ini sama seperti properti <link
|
||||
linkend="section.property.iteration"><parameter>iteration</parameter></link>,
|
||||
kecuali ia dimulai dengan nol daripada satu.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>{section} <varname>index</varname> property</title>
|
||||
<para>
|
||||
<note><title>FYI</title>
|
||||
<para><literal>$custid[customer.index]</literal> dan
|
||||
<literal>$custid[customer]</literal> adalah sama.</para>
|
||||
</note>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$custid}
|
||||
{$smarty.section.customer.index} id: {$custid[customer]}<br />
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
0 id: 1000<br />
|
||||
1 id: 1001<br />
|
||||
2 id: 1002<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="section.property.index.prev">
|
||||
<title>.index_prev</title>
|
||||
<para>
|
||||
<parameter>index_prev</parameter> adalah indeks pengulangan sebelumnya.
|
||||
Pada pengulangan pertama, ini disetel -1.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="section.property.index.next">
|
||||
<title>.index_next</title>
|
||||
<para>
|
||||
<parameter>index_next</parameter> adalah indeks pengulangan berikutnya.
|
||||
Pada pengulangan terakhir, ini masih satu lagi daripada indeks saat ini,
|
||||
memperhatikan setelan atribut <parameter>step</parameter>, jika diberikan.
|
||||
</para>
|
||||
|
||||
<example>
|
||||
<title>properti <varname>index</varname>, <varname>index_next</varname>
|
||||
dan <varname>index_prev</varname> </title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$data = array(1001,1002,1003,1004,1005);
|
||||
$smarty->assign('rows',$data);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template untuk menampilkan array di atas dalam sebuah tabel</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* $rows[row.index] dan $rows[row] adalah identik dalam pengertian *}
|
||||
<table>
|
||||
<tr>
|
||||
<th>index</th><th>id</th>
|
||||
<th>index_prev</th><th>prev_id</th>
|
||||
<th>index_next</th><th>next_id</th>
|
||||
</tr>
|
||||
{section name=row loop=$rows}
|
||||
<tr>
|
||||
<td>{$smarty.section.row.index}</td><td>{$rows[row]}</td>
|
||||
<td>{$smarty.section.row.index_prev}</td><td>{$rows[row.index_prev]}</td>
|
||||
<td>{$smarty.section.row.index_next}</td><td>{$rows[row.index_next]}</td>
|
||||
</tr>
|
||||
{/section}
|
||||
</table>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan tabel yang berisi sebagai berikut:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
index id index_prev prev_id index_next next_id
|
||||
0 1001 -1 1 1002
|
||||
1 1002 0 1001 2 1003
|
||||
2 1003 1 1002 3 1004
|
||||
3 1004 2 1003 4 1005
|
||||
4 1005 3 1004 5
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="section.property.iteration">
|
||||
<title>.iteration</title>
|
||||
<para>
|
||||
<parameter>iteration</parameter> berisi iterasi pengulangan saat ini dan
|
||||
dimulai dari satu.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
Ini tidak dipengaruhi oleh properti <varname>{section}</varname>
|
||||
<parameter>start</parameter>, <parameter>step</parameter> dan <parameter>max</parameter>,
|
||||
tidak seperti properti
|
||||
<link linkend="section.property.index"><parameter>index</parameter></link>.
|
||||
<parameter>iteration</parameter> juga dimulai dengan satu daripada nol
|
||||
tidak seperti <parameter>index</parameter>. <link
|
||||
linkend="section.property.rownum"><parameter>rownum</parameter></link>
|
||||
adalah alias untuk <parameter>iteration</parameter>, keduanya sama.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>Properti <varname>iteration</varname> dari seksi </title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// array of 3000 to 3015
|
||||
$id = range(3000,3015);
|
||||
$smarty->assign('arr',$id);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template untuk menampilkan setiap elemen lain array <literal>$arr</literal>
|
||||
dengan <literal>step=2</literal></para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=cu loop=$arr start=5 step=2}
|
||||
iteration={$smarty.section.cu.iteration}
|
||||
index={$smarty.section.cu.index}
|
||||
id={$custid[cu]}<br />
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
iteration=1 index=5 id=3005<br />
|
||||
iteration=2 index=7 id=3007<br />
|
||||
iteration=3 index=9 id=3009<br />
|
||||
iteration=4 index=11 id=3011<br />
|
||||
iteration=5 index=13 id=3013<br />
|
||||
iteration=6 index=15 id=3015<br />
|
||||
]]>
|
||||
</screen>
|
||||
<para>
|
||||
Contoh lain yang menggunakan properti <parameter>iteration</parameter> untuk
|
||||
mengeluarkan blok header tabel setiap lima baris.
|
||||
Menggunakan fungsi <link linkend="language.function.if"><varname>{if}</varname></link>
|
||||
dengan operator mod.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<table>
|
||||
{section name=co loop=$contacts}
|
||||
{if $smarty.section.co.iteration % 5 == 1}
|
||||
<tr><th> </th><th>Name></th><th>Home</th><th>Cell</th><th>Email</th></tr>
|
||||
{/if}
|
||||
<tr>
|
||||
<td><a href="view.php?id={$contacts[co].id}">view<a></td>
|
||||
<td>{$contacts[co].name}</td>
|
||||
<td>{$contacts[co].home}</td>
|
||||
<td>{$contacts[co].cell}</td>
|
||||
<td>{$contacts[co].email}</td>
|
||||
<tr>
|
||||
{/section}
|
||||
</table>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="section.property.first">
|
||||
<title>.first</title>
|
||||
<para>
|
||||
<parameter>first</parameter> disetel &true; jika iterasi
|
||||
<varname>{section}</varname> saat ini adalah yang pertama.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="section.property.last">
|
||||
<title>.last</title>
|
||||
<para>
|
||||
<parameter>last</parameter> disetel &true; jika iterasi seksi saat ini
|
||||
adalah yang terakhir.
|
||||
</para>
|
||||
<example>
|
||||
<title>properti {section} <varname>first</varname> dan <varname>last</varname></title>
|
||||
<para>
|
||||
Contoh ini mengulang array <varname>$customers</varname>, mengeluarkan
|
||||
blok header pada iterasi pertama dan terakhir mengeluarkan blok footer.
|
||||
Juga menggunakan properti
|
||||
<link linkend="section.property.total"><parameter>total</parameter></link>.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$customers}
|
||||
{if $smarty.section.customer.first}
|
||||
<table>
|
||||
<tr><th>id</th><th>kustomer</th></tr>
|
||||
{/if}
|
||||
|
||||
<tr>
|
||||
<td>{$customers[customer].id}}</td>
|
||||
<td>{$customers[customer].name}</td>
|
||||
</tr>
|
||||
|
||||
{if $smarty.section.customer.last}
|
||||
<tr><td></td><td>{$smarty.section.customer.total} kustomer</td></tr>
|
||||
</table>
|
||||
{/if}
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="section.property.rownum">
|
||||
<title>.rownum</title>
|
||||
<para>
|
||||
<parameter>rownum</parameter> berisi iterasi pengulangan saat ini,
|
||||
dimulai dengan satu. Ini adalah nama lain dari <link
|
||||
linkend="section.property.iteration"><parameter>iterasi</parameter></link>,
|
||||
cara kerjanya sama persis.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="section.property.loop">
|
||||
<title>.loop</title>
|
||||
<para>
|
||||
<parameter>loop</parameter> berisi angka indeks terakhir yang mengulang
|
||||
{section}. Ini bisa dipakai di dalam atau setelah <varname>{section}</varname>.
|
||||
</para>
|
||||
<example>
|
||||
<title>properti {section} <varname>loop</varname></title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$custid}
|
||||
{$smarty.section.customer.index} id: {$custid[customer]}<br />
|
||||
{/section}
|
||||
Ada {$smarty.section.customer.loop} kustomer yang ditampilkan di atas.
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
0 id: 1000<br />
|
||||
1 id: 1001<br />
|
||||
2 id: 1002<br />
|
||||
Ada 3 kustomer yang ditampilkan di atas.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="section.property.show">
|
||||
<title>.show</title>
|
||||
<para>
|
||||
<parameter>show</parameter> dipakai sebagai parameter ke seksi dan berupa
|
||||
nilai boolean. Jika &false;, seksi tidak akan ditampilkan. Jika terdapat
|
||||
<varname>{sectionelse}</varname>, akan ditampilkan sebagai alternatif.
|
||||
</para>
|
||||
<example>
|
||||
<title><varname>show</varname> properti </title>
|
||||
<para>Boolean <varname>$show_customer_info</varname> sudah dikirimkan dari
|
||||
aplikasi PHP, untuk mengatur apakah seksi ditampilkan atau tidak.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$customers show=$show_customer_info}
|
||||
{$smarty.section.customer.rownum} id: {$customers[customer]}<br />
|
||||
{/section}
|
||||
|
||||
{if $smarty.section.customer.show}
|
||||
seksi ditampilkan.
|
||||
{else}
|
||||
seksi tidak ditampilkan.
|
||||
{/if}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
1 id: 1000<br />
|
||||
2 id: 1001<br />
|
||||
3 id: 1002<br />
|
||||
|
||||
the section was shown.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="section.property.total">
|
||||
<title>.total</title>
|
||||
<para>
|
||||
<parameter>total</parameter> berisi jumlah iterasi yang akan
|
||||
<varname>{section}</varname> mengulangnya. Ini bisa dipakai di dalam atau setelah
|
||||
<varname>{section}</varname>.
|
||||
</para>
|
||||
<example>
|
||||
<title><varname>total</varname> contoh properti</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=customer loop=$custid step=2}
|
||||
{$smarty.section.customer.index} id: {$custid[customer]}<br />
|
||||
{/section}
|
||||
Ada {$smarty.section.customer.total} kustomer yang ditampilkan di atas.
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga <link linkend="language.function.foreach"><varname>{foreach}</varname></link>
|
||||
dan
|
||||
<link linkend="language.variables.smarty.loops"><parameter>$smarty.section</parameter></link>.
|
||||
</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,85 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.strip">
|
||||
<title>{strip}</title>
|
||||
<para>
|
||||
Berulang kali desainer designers mengalami hal di mana spasi dan
|
||||
tombol enter mempengarhui output dari HTML yang dibuatnya ("fitur"
|
||||
browser), kemudian anda harus menjalankan semua tag anda bersamaan
|
||||
dalam template guna memperoleh hasil yang diinginkan. Ini biasanya
|
||||
berakhir dengan template yang tidak terbaca atau tidak teratur.
|
||||
</para>
|
||||
<para>
|
||||
Apapun spasi ekstra atau tanda tombol enter di dalam tag
|
||||
<varname>{strip}{/strip}</varname> dibuang di awal dan akhir baris
|
||||
sebelum ditampilkan. Dengan cara ini anda bisa memelihara template
|
||||
mudah dibaca, dan tidak mencemaskan tentang spasi ekstra yang
|
||||
menyebabkan masalah.
|
||||
</para>
|
||||
<note>
|
||||
<para>
|
||||
<varname>{strip}{/strip}</varname> tidak mempengaruhi isi dari
|
||||
variabel template, sebaliknya lihat
|
||||
<link linkend="language.modifier.strip">pengubah strip</link>.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>tag {strip}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* contoh berikut akan dijalankan semua ke dalam satu baris setelah output *}
|
||||
{strip}
|
||||
<table border='0'>
|
||||
<tr>
|
||||
<td>
|
||||
<a href="{$url}">
|
||||
<font color="red">This is a test</font>
|
||||
</a>
|
||||
</td>
|
||||
</tr>
|
||||
</table>
|
||||
{/strip}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<table border='0'><tr><td><a href="http://. snipped...</a></td></tr></table>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Catatan bahwa dalam contoh di atas, seluruh baris diawali dan diakhiri dengan
|
||||
tag HTML. Harap berhati-hati bahwa seluruh baris dijalankan bersamaan.
|
||||
Jika anda mempunyai teks biasa di awal atau di akhir dari setiap baris,
|
||||
ia akan dijalankan bersamaan, dan mungkin menghasilkan yang tidak diinginkan.
|
||||
</para>
|
||||
<para>
|
||||
Lihat juga pengubah
|
||||
<link linkend="language.modifier.strip"><varname>strip</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,158 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.assign">
|
||||
<title>{assign}</title>
|
||||
<para>
|
||||
<varname>{assign}</varname> dipakai untuk menempatkan variabel template
|
||||
<emphasis role="bold">selama eksekusi sebuah template</emphasis>.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>var</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nama variabel yang ditempati</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>value</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nilai yang ditempatkan</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>{assign}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{assign var='name' value='Bob'}
|
||||
|
||||
Nilai dari $name adalah {$name}.
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Nilai dari $name adalah Bob.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>{assign} with some maths</title>
|
||||
<para>Contoh kompleks harus memiliki variabel dalam `tanda kutip terbalik`</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{assign var=running_total value=`$running_total+$some_array[row].some_value`}
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Mengakses variabel {assign} dari naskah PHP</title>
|
||||
<para>
|
||||
Untuk mengakses variabel <varname>{assign}</varname> dari naskah php
|
||||
menggunakan <link linkend="api.get.template.vars">
|
||||
<varname>get_template_vars()</varname></link>.
|
||||
Ini adalah template yang membuat variabel <parameter>$foo</parameter>.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{assign var='foo' value='Smarty'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Variabel template hanya tersedia setelah/selama eksekusi template seperti
|
||||
dalam naskah berikut.
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// ini tidak akan menampilkan apapun karena template belum dieksekusi
|
||||
echo $smarty->get_template_vars('foo');
|
||||
|
||||
// ambil template ke variabel
|
||||
$whole_page = $smarty->fetch('index.tpl');
|
||||
|
||||
// ini akan menampilkan 'smarty' karena template sudah dieksekusi
|
||||
echo $smarty->get_template_vars('foo');
|
||||
|
||||
$smarty->assign('foo','Even smarter');
|
||||
|
||||
// ini akan menampilkan 'Even smarter'
|
||||
echo $smarty->get_template_vars('foo');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<para>
|
||||
Fungsi berikut dapat juga <emphasis>secara opsional</emphasis> menempatkan
|
||||
variabel template.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<link linkend="language.function.capture"><varname>{capture}</varname></link>,
|
||||
<link linkend="language.function.include"><varname>{include}</varname></link>,
|
||||
<link linkend="language.function.include.php"><varname>{include_php}</varname></link>,
|
||||
<link linkend="language.function.insert"><varname>{insert}</varname></link>,
|
||||
<link linkend="language.function.counter"><varname>{counter}</varname></link>,
|
||||
<link linkend="language.function.cycle"><varname>{cycle}</varname></link>,
|
||||
<link linkend="language.function.eval"><varname>{eval}</varname></link>,
|
||||
<link linkend="language.function.fetch"><varname>{fetch}</varname></link>,
|
||||
<link linkend="language.function.math"><varname>{math}</varname></link>,
|
||||
<link linkend="language.function.textformat"><varname>{textformat}</varname></link>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga <link linkend="api.assign"><varname>assign()</varname></link>
|
||||
dan
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,126 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.counter">
|
||||
<title>{counter}</title>
|
||||
<para>
|
||||
<varname>{counter}</varname> dipakai untuk mengeluarkan jumlah.
|
||||
<varname>{counter}</varname> akan mengingat jumlah pada setiap
|
||||
pengulangan. Anda dapat menyesuaikan jumlah, interval dan arah
|
||||
penghitungan, juga menentukan apakah menampilkan nilai atau tidak.
|
||||
Anda dapat menjalankan multipel penghitung secara konkuren dengan
|
||||
menyertakan masing-masing dengan nama yang unik. Jika anda tidak
|
||||
menyertakan sebuah nama, nama <quote>default</quote> akan dipakai.
|
||||
</para>
|
||||
<para>
|
||||
Jika anda menyertakan atribut <parameter>assign</parameter>, keluaran
|
||||
dari fungsi <varname>{counter}</varname> akan ditempatkan ke variabel
|
||||
template ini daripada dikeluarkan ke template.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>default</emphasis></entry>
|
||||
<entry>Nama penghitung</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>start</entry>
|
||||
<entry>number</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>1</emphasis></entry>
|
||||
<entry>Angka awal untuk memulai perhitungan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>skip</entry>
|
||||
<entry>number</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>1</emphasis></entry>
|
||||
<entry>Interval untuk setiap perhitungan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>direction</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>up</emphasis></entry>
|
||||
<entry>Arah perhitungan (naik/turun)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>print</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&true;</emphasis></entry>
|
||||
<entry>Apakan memperlihatkan nilai atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>variabel template di mana output akan ditempatinya</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>{counter}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* awali perhitungan *}
|
||||
{counter start=0 skip=2}<br />
|
||||
{counter}<br />
|
||||
{counter}<br />
|
||||
{counter}<br />
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ini akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
0<br />
|
||||
2<br />
|
||||
4<br />
|
||||
6<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,153 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.cycle">
|
||||
<title>{cycle}</title>
|
||||
<para>
|
||||
<varname>{cycle}</varname> dpakai untuk mengganti satu set nilai.
|
||||
Ini memudahkan misalnya, mengganti antara dua atau lebih warna dalam
|
||||
sebuah tabel, atau berputar melalui array nilai.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>default</emphasis></entry>
|
||||
<entry>Nama cycle</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>values</entry>
|
||||
<entry>mixed</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>N/A</emphasis></entry>
|
||||
<entry>Nilai untuk berputar, bisa daftar dipisahkan koma
|
||||
(lihat atribut pembatas), atau array nilai</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>print</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&true;</emphasis></entry>
|
||||
<entry>Apakah mencetak nilai atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>advance</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&true;</emphasis></entry>
|
||||
<entry>Apakah maju ke nilai berikutnya</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>delimiter</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>,</emphasis></entry>
|
||||
<entry>Pembatas yng dipakai dalam atribut nilai</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Variabel template yang akan ditempati output</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>reset</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>Perputaran akan disetel ke nilai pertama dan tidak dimajukan</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Anda bisa <varname>{cycle}</varname> melalui lebih dari satu set nilai
|
||||
dalam sebuah template dengan menyertakan atribut <parameter>name</parameter>.
|
||||
Beri setiap <varname>{cycle}</varname> <parameter>name</parameter> yang
|
||||
unik.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Anda dapat memaksa nilai saat ini untuk mencetak dengan atribut
|
||||
<parameter>print</parameter> disetel ke &false;. Ini berguna untuk
|
||||
melewati sebuah nilai secara diam-diam.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Atribut <parameter>advance</parameter> dipakai untuk mengulang nilai,
|
||||
Ketika disetel ke &false;, panggilan berikutnya ke <varname>{cycle}</varname>
|
||||
akan mencetak nilai yang sama.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Jika anda menyertakan atribut <parameter>assign</parameter>, output dari
|
||||
fungsi <varname>{cycle}</varname> akan ditempatkan ke variabel template
|
||||
daripada ke template.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>{cycle}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{section name=rows loop=$data}
|
||||
<tr bgcolor="{cycle values="#eeeeee,#d0d0d0"}">
|
||||
<td>{$data[rows]}</td>
|
||||
</tr>
|
||||
{/section}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Template di atas akan memperlihatkan:</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<tr bgcolor="#eeeeee">
|
||||
<td>1</td>
|
||||
</tr>
|
||||
<tr bgcolor="#d0d0d0">
|
||||
<td>2</td>
|
||||
</tr>
|
||||
<tr bgcolor="#eeeeee">
|
||||
<td>3</td>
|
||||
</tr>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,66 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.debug">
|
||||
<title>{debug}</title>
|
||||
<para>
|
||||
<varname>{debug}</varname> mengeluarkan konsol debug ke halaman. Ini bekerja
|
||||
mengabaikan setelan <link linkend="chapter.debugging.console">debug</link>
|
||||
dalam naskah php. Karena ini dieksekusi saat runtime, ini hanya dapat
|
||||
menampilkan variabel yang <link linkend="api.assign">ditempatkan</link>;
|
||||
bukan templates yang sedang digunakan. Akan tetapi, anda bisa melihat
|
||||
semua variabel yang tersedia saat ini dalam lingkup template.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>output</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>javascript</emphasis></entry>
|
||||
<entry>tipe output, html atau javascript</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="chapter.debugging.console">halaman konsol debugging</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,155 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.eval">
|
||||
<title>{eval}</title>
|
||||
<para>
|
||||
<varname>{eval}</varname> dipakai untuk mengevaluasi sebuah variabel
|
||||
sebagai template.
|
||||
Ini bisa dgunakan untuk hal seperti menyertakan tag/variabel template
|
||||
ke dalam variabel atau tag/variabel template ke dalam file config.
|
||||
</para>
|
||||
<para>
|
||||
Jika anda menyertakan atribut <parameter>assign</parameter>, output dari
|
||||
fungsi <varname>{eval}</varname> akan ditempatkan ke variabel template
|
||||
ini daripada ke template.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>var</entry>
|
||||
<entry>mixed</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Variabel (atau string) untuk mengevaluasi</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Variabel template yang akan ditempati output
|
||||
to</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Variabel yang dievaluasi diperlakukan sama seperti template. Mengikuti
|
||||
fitur pengeluaran dan keamanan yang sama seolah-olah sebuah template.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Variabel yang dievaluasi dikompilasi setiap kali permintaan, versi
|
||||
terkompilasi tidak disimpan! Akan tetapi jika anda menghidupkan
|
||||
<link linkend="caching">caching</link>, output akan di-cache
|
||||
dengan sisa template.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<example>
|
||||
<title>{eval}</title>
|
||||
<para>Isi dari file config, <filename>setup.conf</filename>.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
emphstart = <strong>
|
||||
emphend = </strong>
|
||||
title = Welcome to {$company}'s home page!
|
||||
ErrorCity = You must supply a {#emphstart#}city{#emphend#}.
|
||||
ErrorState = You must supply a {#emphstart#}state{#emphend#}.
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{config_load file='setup.conf'}
|
||||
|
||||
{eval var=$foo}
|
||||
{eval var=#title#}
|
||||
{eval var=#ErrorCity#}
|
||||
{eval var=#ErrorState# assign='state_error'}
|
||||
{$state_error}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Template di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
This is the contents of foo.
|
||||
Welcome to Foobar Pub & Grill's home page!
|
||||
You must supply a <strong>city</strong>.
|
||||
You must supply a <strong>state</strong>.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Contoh {eval} lainnya</title>
|
||||
<para>Ini menampilkan nama server (in uppercase) dan IP. Variabel yang
|
||||
ditempati <parameter>$str</parameter> berasal dari query database.</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$str = 'The server name is {$smarty.server.SERVER_NAME|upper} '
|
||||
.'at {$smarty.server.SERVER_ADDR}';
|
||||
$smarty->assign('foo',$str);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{eval var=$foo}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,139 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.fetch">
|
||||
<title>{fetch}</title>
|
||||
<para>
|
||||
<varname>{fetch}</varname> dipakai untuk mengambil file dari sistem file
|
||||
lokal, http, atau ftp dan menampilkan konten.
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Jika nama file diawali dengan
|
||||
<parameter>http://</parameter>, halaman situs web akan diambil dan
|
||||
ditempilkan.
|
||||
<note>
|
||||
<para>
|
||||
Ini tidak akan mendukung pengalihan http, pastikan untuk menyertakan
|
||||
garis miring terakhir pada halaman web yang anda ambil bila
|
||||
diperlukan.
|
||||
</para>
|
||||
</note>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Jika nama file diawali dengan <parameter>ftp://</parameter>, file akan
|
||||
di-download dari server ftp dan ditampilkan.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Untuk file lokal, harus memberikan baik path file sistem lengkap ataupun
|
||||
path relatif ke naskah php yang dijalankan.
|
||||
<note>
|
||||
<para>
|
||||
Jika template <link linkend="variable.security">
|
||||
<parameter>$security</parameter></link>
|
||||
dihidupkan dan anda sedang mengambil file dari sistem file lokal,
|
||||
<varname>{fetch}</varname> hanya akan membolehkan file dari dalam
|
||||
salah satu yang didefinisikan dalam
|
||||
will only allow files from within one of the defined
|
||||
<link linkend="variable.secure.dir">direktori aman</link>.
|
||||
</para>
|
||||
</note>
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Jika atribut <parameter>assign</parameter> disetel, output fungsi
|
||||
<varname>{fetch}</varname> akan ditempatkan ke variabel template
|
||||
ini daripada ke template.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Type</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>file</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>File, http atau situs ftp untuk diambil</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Variabel template yang akan ditempati</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
|
||||
<example>
|
||||
<title>contoh {fetch}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* sertakan beberapa javascript dalam template anda *}
|
||||
{fetch file='/export/httpd/www.example.com/docs/navbar.js'}
|
||||
|
||||
{* sertakan beberapa teks cuaca dalam template anda dari situs web lain *}
|
||||
{fetch file='http://www.myweather.com/68502/'}
|
||||
|
||||
{* ambil file headline berita via ftp *}
|
||||
{fetch file='ftp://user:password@ftp.example.com/path/to/currentheadlines.txt'}
|
||||
{* sama seperti di atas tapi dengan variabel *}
|
||||
{fetch file="ftp://`$user`:`$password`@`$server`/`$path`"}
|
||||
|
||||
{* tempatkan konten yang diambil ke variabel template *}
|
||||
{fetch file='http://www.myweather.com/68502/' assign='weather'}
|
||||
{if $weather ne ''}
|
||||
<div id="weather">{$weather}</div>
|
||||
{/if}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.capture"><varname>{capture}</varname></link>,
|
||||
<link linkend="language.function.eval"><varname>{eval}</varname></link>,
|
||||
<link linkend="language.function.assign"><varname>{assign}</varname></link>
|
||||
dan
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,236 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.html.checkboxes">
|
||||
<title>{html_checkboxes}</title>
|
||||
<para>
|
||||
<varname>{html_checkboxes}</varname> adalah
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>
|
||||
yang membuat grup kotak centang html dengan data yang disediakan.
|
||||
Ia menangani item-item yang dipilihnya juga.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>checkbox</emphasis></entry>
|
||||
<entry>Name daftar kotak centang</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>values</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Ya, kecuali memakai atribut options</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Sebuah array nilai untuk tombol kotak centang</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>output</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Ya, kecuali memakai atribut options</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Output array untuk tombol kotak centang</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>selected</entry>
|
||||
<entry>string/array</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Elemen kotak centang yang dipilih</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>options</entry>
|
||||
<entry>associative array</entry>
|
||||
<entry>Ya, kecuali memakai nilai dan output</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array nilai asosiatif dan output</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>separator</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>String teks untuk memisahkan setiap item kotak centang</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Menempatkan tag kotak centang ke array daripada output</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>labels</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&true;</emphasis></entry>
|
||||
<entry>Menambahkan tag <label> ke output</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Menempatkan output ke array dengan setiap output kotak centang
|
||||
sebagai satu elemen.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Atribut yang dibutuhkan adalah <parameter>values</parameter> dan
|
||||
<parameter>output</parameter>, kecuali sebaliknya anda menggunakan
|
||||
<parameter>options</parameter>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Seluruh output adalah sesuai XHTML.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Semua parameter yang tidak dalam daftar di atas dicetak sebagai pasangan
|
||||
nama/nilai di dalam setiap tag <input> yang dibuat.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>{html_checkboxes}</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('cust_ids', array(1000,1001,1002,1003));
|
||||
$smarty->assign('cust_names', array(
|
||||
'Joe Schmoe',
|
||||
'Jack Smith',
|
||||
'Jane Johnson',
|
||||
'Charlie Brown')
|
||||
);
|
||||
$smarty->assign('customer_id', 1001);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
di mana template adalah
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_checkboxes name='id' values=$cust_ids output=$cust_names
|
||||
selected=$customer_id separator='<br />'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
atau di mana kode PHP adalah:
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('cust_checkboxes', array(
|
||||
1000 => 'Joe Schmoe',
|
||||
1001 => 'Jack Smith',
|
||||
1002 => 'Jane Johnson',
|
||||
1003 => 'Charlie Brown')
|
||||
);
|
||||
$smarty->assign('customer_id', 1001);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
dan template adalah
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_checkboxes name='id' options=$cust_checkboxes
|
||||
selected=$customer_id separator='<br />'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
kedua contoh akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<label><input type="checkbox" name="id[]" value="1000" />Joe Schmoe</label><br />
|
||||
<label><input type="checkbox" name="id[]" value="1001" checked="checked" />Jack Smith</label>
|
||||
<br />
|
||||
<label><input type="checkbox" name="id[]" value="1002" />Jane Johnson</label><br />
|
||||
<label><input type="checkbox" name="id[]" value="1003" />Charlie Brown</label><br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<example>
|
||||
<title>
|
||||
Contoh database (misal PEAR atau ADODB):
|
||||
</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$sql = 'select type_id, types from contact_types order by type';
|
||||
$smarty->assign('contact_types',$db->getAssoc($sql));
|
||||
|
||||
$sql = 'select contact_id, contact_type_id, contact '
|
||||
.'from contacts where contact_id=12';
|
||||
$smarty->assign('contact',$db->getRow($sql));
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Hasil query database di atas akan ditampilkan.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_checkboxes name='contact_type_id' options=$contact_types
|
||||
selected=$contact.contact_type_id separator='<br />'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.html.radios"><varname>{html_radios}</varname></link>
|
||||
dan
|
||||
<link linkend="language.function.html.options"><varname>{html_options}</varname></link>
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
||||
|
||||
|
@@ -0,0 +1,163 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.html.image">
|
||||
<title>{html_image}</title>
|
||||
<para>
|
||||
<varname>{html_image}</varname> adalah sebuah
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>
|
||||
yang membuat sebuah tag HTML <literal><img></literal>.
|
||||
<parameter>height</parameter> dan <parameter>width</parameter>
|
||||
secara otomatis dihitung dari gile gambar jika tidak disediakan.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>file</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>nama/path ke gambar</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>height</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>tinggi asli gambar</emphasis></entry>
|
||||
<entry>Tinggi untuk menampilkan gambar</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>width</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>panjang asli gambar</emphasis></entry>
|
||||
<entry>Panjang untuk menampilkan gambar</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>basedir</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>akar doc server web</emphasis></entry>
|
||||
<entry>Direktori yang jadi basis path relatifnya</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>alt</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis><quote></quote></emphasis></entry>
|
||||
<entry>Deskripsi alternatif dari gambar</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>href</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>nilai href untuk menghubungkan gambar</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>path_prefix</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Prefiks untuk path output</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
<parameter>basedir</parameter> adalah basis direktori yang menjadi dasar
|
||||
path relatif ke gambar. Jika tidak disediakan, akar dokumen server web,
|
||||
<varname>$_ENV['DOCUMENT_ROOT']</varname> dipakai sebagai basis.
|
||||
Jika <link linkend="variable.security"><parameter>$security</parameter></link>
|
||||
dihidupkan, path ke gambar harus di dalam
|
||||
<link linkend="variable.secure.dir">direktori aman</link>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<parameter>href</parameter> adalah nilai href untuk menghubungkan gambar.
|
||||
Jika link tidak disediakan, tag <literal><a href="LINKVALUE"><a></literal>
|
||||
ditempatkan sekitar tag gambar.
|
||||
</para> </listitem>
|
||||
|
||||
<listitem><para>
|
||||
<parameter>path_prefix</parameter> adalah string prefiks opsional yang
|
||||
dapat anda berikan path output.
|
||||
Ini berguna jika anda ingin menyediakan nama server yang berbeda untuk gambar.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Semua parameters yang tidak dalam daftar di atas dicetak sebagai pasangan
|
||||
nama/nilai di dalam tag <literal><img></literal> yang dibuat.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
<varname>{html_image}</varname> membutuhkan mencari ke disk untuk membaca
|
||||
gambar dan menghitung tingi serta panjangnya. Jika anda tidak memakai
|
||||
<link linkend="caching">caching</link> template,
|
||||
umumnya lebih baik untuk menghindari <varname>{html_image}</varname> dan
|
||||
membiarkan tag gambar statis untuk performansi optimal.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<example>
|
||||
<title>contoh {html_image}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_image file='pumpkin.jpg'}
|
||||
{html_image file='/path/from/docroot/pumpkin.jpg'}
|
||||
{html_image file='../path/relative/to/currdir/pumpkin.jpg'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh tampilan dari template di atas akan seperti:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<img src="pumpkin.jpg" alt="" width="44" height="68" />
|
||||
<img src="/path/from/docroot/pumpkin.jpg" alt="" width="44" height="68" />
|
||||
<img src="../path/relative/to/currdir/pumpkin.jpg" alt="" width="44" height="68" />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,279 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.html.options">
|
||||
<title>{html_options}</title>
|
||||
<para>
|
||||
<varname>{html_options}</varname> adalah
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>
|
||||
yang membuat grup html <literal><select><option></literal>
|
||||
dengan data yang ditempatkan. Ia menangani item-item yang dipilihnya juga.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>values</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Ya, kecuali memakai atribut options</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array nilai untuk dropdown</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>output</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Ya, kecuali memakai atribut options</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array output untuk dropdown</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>selected</entry>
|
||||
<entry>string/array</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Elemen opsi yang dipilih</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>options</entry>
|
||||
<entry>associative array</entry>
|
||||
<entry>Ya, kecuali memakai nilai dan output</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array nilai asosiatif dan output</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Nama pilihan grup</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Atribut yang dibutuhkan adalah
|
||||
<parameter>values</parameter> dan <parameter>output</parameter>,
|
||||
kecuali anda sebaliknya menggunakan <parameter>options</parameter> yang
|
||||
dibagung.
|
||||
</para></listitem>
|
||||
|
||||
|
||||
<listitem><para>
|
||||
Jika atribut opsional <parameter>name</parameter> disediakan, tag
|
||||
<literal><select></select></literal> dibuat, sebaliknya
|
||||
HANYA daftar <literal><option></literal> yang dibuat.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Jika yang nilai diberikan adalah array, ia akan memperlakukannya sebagai
|
||||
html <literal><optgroup></literal>, dan menampilkan grup.
|
||||
Rekursi didukung dengan <literal><optgroup></literal>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Semua parameter yang tidak dalam daftar di atas dicetak sebagai pasangan
|
||||
nama/nilai di dalam tag <literal><select></literal>. Diabaikan jika
|
||||
<parameter>name</parameter> opsional tidak disediakan.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Semua output sesuai dengan XHTML.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
|
||||
<example>
|
||||
<title>Array asosiatif dengan atribut <varname>options</varname></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('myOptions', array(
|
||||
1800 => 'Joe Schmoe',
|
||||
9904 => 'Jack Smith',
|
||||
2003 => 'Charlie Brown')
|
||||
);
|
||||
$smarty->assign('mySelect', 9904);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Template berikut akan membuat daftar drop-down.
|
||||
Perhatikan keberadaan atribut <parameter>name</parameter> yang membuat
|
||||
tag <literal><select></literal>.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_options name=foo options=$myOptions selected=$mySelect}
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
Output dari contoh di atas akan terlihat seperti:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<select name="foo">
|
||||
<option label="Joe Schmoe" value="1800">Joe Schmoe</option>
|
||||
<option label="Jack Smith" value="9904" selected="selected">Jack Smith</option>
|
||||
<option label="Charlie Brown" value="2003">Charlie Brown</option>
|
||||
</select>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Dropdown dengan array terpisah untuk<varname>values</varname> dan
|
||||
<varname>ouptut</varname></title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('cust_ids', array(56,92,13));
|
||||
$smarty->assign('cust_names', array(
|
||||
'Joe Schmoe',
|
||||
'Jane Johnson',
|
||||
'Charlie Brown'));
|
||||
$smarty->assign('customer_id', 92);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Array di atas yang akan ditampilkan dengan template berikut (perhatikan
|
||||
penggunaan fungsi php <ulink url="&url.php-manual;function.count">
|
||||
<varname>count()</varname></ulink> sebagai pengubah untuk menyetel
|
||||
ukuran pilihan).
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<select name="customer_id" size="{$cust_names|@count}">
|
||||
{html_options values=$cust_ids output=$cust_names selected=$customer_id}
|
||||
</select>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<select name="customer_id">
|
||||
<option label="Joe Schmoe" value="56">Joe Schmoe</option>
|
||||
<option label="Jack Smith" value="92" selected="selected">Jane Johnson</option>
|
||||
<option label="Charlie Brown" value="13">Charlie Brown</option>
|
||||
</select>
|
||||
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<example>
|
||||
<title>Contoh database (misal ADODB atau PEAR)</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$sql = 'select type_id, types from contact_types order by type';
|
||||
$smarty->assign('contact_types',$db->getAssoc($sql));
|
||||
|
||||
$sql = 'select contact_id, name, email, contact_type_id
|
||||
from contacts where contact_id='.$contact_id;
|
||||
$smarty->assign('contact',$db->getRow($sql));
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana sebuah template bisa seperti berikut. Perhatikan penggunaan pengubah
|
||||
<link linkend="language.modifier.truncate"><varname>truncate</varname></link>.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<select name="type_id">
|
||||
<option value='null'>-- none --</option>
|
||||
{html_options options=$contact_types|truncate:20 selected=$contact.type_id}
|
||||
</select>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Dropdown dengan <optgroup> </title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$arr['Sport'] = array(6 => 'Golf', 9 => 'Cricket',7 => 'Swim');
|
||||
$arr['Rest'] = array(3 => 'Sauna',1 => 'Massage');
|
||||
$smarty->assign('lookups', $arr);
|
||||
$smarty->assign('fav', 7);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Naskah di atas dan template berikut
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_options name=foo options=$lookups selected=$fav}
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<select name="foo">
|
||||
<optgroup label="Sport">
|
||||
<option label="Golf" value="6">Golf</option>
|
||||
<option label="Cricket" value="9">Cricket</option>
|
||||
<option label="Swim" value="7" selected="selected">Swim</option>
|
||||
</optgroup>
|
||||
<optgroup label="Rest">
|
||||
<option label="Sauna" value="3">Sauna</option>
|
||||
<option label="Massage" value="1">Massage</option>
|
||||
</optgroup>
|
||||
</select>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.html.checkboxes"><varname>{html_checkboxes}</varname></link>
|
||||
dan
|
||||
<link linkend="language.function.html.radios"><varname>{html_radios}</varname></link>
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,223 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.html.radios">
|
||||
<title>{html_radios}</title>
|
||||
<para>
|
||||
<varname>{html_radios}</varname> adalah
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>
|
||||
yang membuat grup tombol radio HTML. Ia juga menangani item
|
||||
yang dipilihnya juga.
|
||||
</para>
|
||||
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>name</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>radio</emphasis></entry>
|
||||
<entry>Nama daftar radio</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>values</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Ya, kecuali memakai atribut options</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array nilai untuk tombol radio</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>output</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Ya, kecuali atribut options</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array output untuk tombol radio</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>selected</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Elemen radio yang dipilih</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>options</entry>
|
||||
<entry>associative array</entry>
|
||||
<entry>Ya, kecuali memakai nilai dan output</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array asosiatif nilai dan output</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>separator</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>String teks untuk memisahkan setiap item radio</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Menempatkan tag radio ke array daripada output</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Atribut yang diperlukan adalah <parameter>values</parameter> dan
|
||||
<parameter>output</parameter>, kecuali sebaliknya anda memakai
|
||||
<parameter>options</parameter>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Semua output sesuai dengan XHTML.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Semua parameter yang tidak dalam daftar di atas adalah output sebagai
|
||||
pasangan nama/nilai di dalam setiap tag <literal><input></literal>
|
||||
yang dibuat.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
<example>
|
||||
<title>contoh pertama {html_radios}</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('cust_ids', array(1000,1001,1002,1003));
|
||||
$smarty->assign('cust_names', array(
|
||||
'Joe Schmoe',
|
||||
'Jack Smith',
|
||||
'Jane Johnson',
|
||||
'Charlie Brown')
|
||||
);
|
||||
$smarty->assign('customer_id', 1001);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_radios name='id' values=$cust_ids output=$cust_names
|
||||
selected=$customer_id separator='<br />'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<example>
|
||||
<title>contoh kedua {html_radios}</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('cust_radios', array(
|
||||
1000 => 'Joe Schmoe',
|
||||
1001 => 'Jack Smith',
|
||||
1002 => 'Jane Johnson',
|
||||
1003 => 'Charlie Brown'));
|
||||
$smarty->assign('customer_id', 1001);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_radios name='id' options=$cust_radios
|
||||
selected=$customer_id separator='<br />'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Kedua contoh akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<label for="id_1000">
|
||||
<input type="radio" name="id" value="1000" id="id_1000" />Joe Schmoe</label><br />
|
||||
<label for="id_1001"><input type="radio" name="id" value="1001" id="id_1001" checked="checked" />Jack Smith</label><br />
|
||||
<label for="id_1002"><input type="radio" name="id" value="1002" id="id_1002" />Jane Johnson</label><br />
|
||||
<label for="id_1003"><input type="radio" name="id" value="1003" id="id_1003" />Charlie Brown</label><br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<example>
|
||||
<title>{html_radios} - Contoh database (misal PEAR atau ADODB):</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$sql = 'select type_id, types from contact_types order by type';
|
||||
$smarty->assign('contact_types',$db->getAssoc($sql));
|
||||
|
||||
$sql = 'select contact_id, name, email, contact_type_id '
|
||||
.'from contacts where contact_id='.$contact_id;
|
||||
$smarty->assign('contact',$db->getRow($sql));
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Variabel yang ditetmpatkan dari database di atas akan menjadi
|
||||
output dengan template:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_radios name='contact_type_id' options=$contact_types
|
||||
selected=$contact.contact_type_id separator='<br />'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
LIhat juga <link
|
||||
linkend="language.function.html.checkboxes"><varname>{html_checkboxes}</varname></link>
|
||||
dan <link
|
||||
linkend="language.function.html.options"><varname>{html_options}</varname></link>
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
||||
|
||||
|
||||
|
@@ -0,0 +1,347 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.html.select.date">
|
||||
<title>{html_select_date}</title>
|
||||
<para>
|
||||
<varname>{html_select_date}</varname> adalah
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>
|
||||
yang membuat dropdown tanggal.
|
||||
Ia bisa menampilkan setiap atau seluruh tahun, bulan, dan hari.
|
||||
Semua parameter yang tidak dalam dafrar di bawah ini dicetak sebagai
|
||||
pasangan nama/nilai di dalam tag <literal><select></literal> hari,
|
||||
bulan dan tahun.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>prefix</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>Date_</entry>
|
||||
<entry>Apa yang menjadi prefiks nama var</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>time</entry>
|
||||
<entry>timestamp/ YYYY-MM-DD</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>waktu dalam cap waktu unix atau format YYYY-MM-DD</entry>
|
||||
<entry>Tanggal/jam apa yang dipakai</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>start_year</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>tahun sekarang</entry>
|
||||
<entry>Tahun pertama dalam dropdown, baik angka tahun,
|
||||
atau relatif ke tahun sekarang (+/- N)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>end_year</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>sama seperti start_year</entry>
|
||||
<entry>Tahun terakhir dalam dropdown, baik angka tahun,
|
||||
atau relatif ke tahun sekarang (+/- N)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>display_days</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakan menampilkan hari atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>display_months</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakah menampilkan bulan atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>display_years</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakah menampilkan tahun atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>month_format</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>%B</entry>
|
||||
<entry>Format apa seharusnya bulan ditampilkan dalam (strftime)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>day_format</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>%02d</entry>
|
||||
<entry>Format apa hari seharusnya ditampilkan dalam (sprintf)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>day_value_format</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>%d</entry>
|
||||
<entry>Format apa nilai hari seharusnya ditampilkan dalam (sprintf)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>year_as_text</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&false;</entry>
|
||||
<entry>Apakah menampilkan tahun sebagai teks</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>reverse_years</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&false;</entry>
|
||||
<entry>Menampilkan tahun dalam urutan terbalik</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>field_array</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>
|
||||
Jika nama diberikan, kotak pilih akan ditampilkan agar hasil akan
|
||||
dikembalikan ke PHP dalam bentuk name[Day], name[Year], name[Month].
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>day_size</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut size untuk memilih tag jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>month_size</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut size untuk memilih tag jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>year_size</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut size untuk memilih tag jika dsediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>all_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra ke semua tag select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>day_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk tag select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>month_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk tag select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>year_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk tag select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>field_order</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>MDY</entry>
|
||||
<entry>Urutan untuk menampilkan field</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>field_separator</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>\n</entry>
|
||||
<entry>String dicetak diantara field yang berbeda</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>month_value_format</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>%m</entry>
|
||||
<entry>format strftime() dari nilai bulan, standarnya adalah
|
||||
%m untuk angka bulan.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>year_empty</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Jika disediakan maka elemen pertama dari kotak-pilih tahun memiliki
|
||||
nilai ini sebagai labelnya dan <quote></quote> sebagai nilainya. Ini
|
||||
berguna untuk menjadikan kotak-select membaca
|
||||
<quote>Please select a year</quote> sebagai contoh.
|
||||
Catatan bahwa anda bisa memakai nilai seperti <quote>-MM-DD</quote>
|
||||
sebagai atribut-waktu untuk menunjukan tahuun yang tidak dipilih.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>month_empty</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Jika disediakan maka elemen pertama dari kotak-pilih bulan memiliki
|
||||
nilai ini sebagai labelnya dan <quote></quote> sebagai nilainya.
|
||||
Catatan bahwa anda dapat memakai nilai seperti <quote>YYYY--DD</quote>
|
||||
sebagai atribut-waktu untuk menunjukan bulan yang tidak dipilih.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>day_empty</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Jika disediakan maka elemen pertama dari kotak-pilih hari memiliki
|
||||
nilai ini sebagai labelnya dan <quote></quote> sebagai nilainya.
|
||||
Catatan bahwa anda dapat memakai nilai seperti <quote>YYYY-MM-</quote>
|
||||
sebagai atribut-waktu untuk menunjukan hari yang tidak dipilih.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<note>
|
||||
<para>
|
||||
Ada fungsi php berguina pada
|
||||
<link linkend="tips.dates">halaman tips tanggal</link> untuk mengubah
|
||||
nilai bentuk <varname>{html_select_date}</varname> ke cap wantu.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<example>
|
||||
<title>{html_select_date}</title>
|
||||
<para>Kode template</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_select_date}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ini akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<select name="Date_Month">
|
||||
<option value="1">January</option>
|
||||
<option value="2">February</option>
|
||||
<option value="3">March</option>
|
||||
..... snipped .....
|
||||
<option value="10">October</option>
|
||||
<option value="11">November</option>
|
||||
<option value="12" selected="selected">December</option>
|
||||
</select>
|
||||
<select name="Date_Day">
|
||||
<option value="1">01</option>
|
||||
<option value="2">02</option>
|
||||
<option value="3">03</option>
|
||||
..... snipped .....
|
||||
<option value="11">11</option>
|
||||
<option value="12">12</option>
|
||||
<option value="13" selected="selected">13</option>
|
||||
<option value="14">14</option>
|
||||
<option value="15">15</option>
|
||||
..... snipped .....
|
||||
<option value="29">29</option>
|
||||
<option value="30">30</option>
|
||||
<option value="31">31</option>
|
||||
</select>
|
||||
<select name="Date_Year">
|
||||
<option value="2006" selected="selected">2006</option>
|
||||
</select>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>contoh kedua {html_select_date}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* awal dan akhir tahun bisa relatif ke tahun saat ini *}
|
||||
{html_select_date prefix='StartDate' time=$time start_year='-5'
|
||||
end_year='+1' display_days=false}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Dengan 2000 sebagai tahun sekarang outputnya:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<select name="StartDateMonth">
|
||||
<option value="1">January</option>
|
||||
<option value="2">February</option>
|
||||
.... snipped ....
|
||||
<option value="11">November</option>
|
||||
<option value="12" selected="selected">December</option>
|
||||
</select>
|
||||
<select name="StartDateYear">
|
||||
<option value="1995">1995</option>
|
||||
.... snipped ....
|
||||
<option value="1999">1999</option>
|
||||
<option value="2000" selected="selected">2000</option>
|
||||
<option value="2001">2001</option>
|
||||
</select>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.html.select.time"><varname>{html_select_time}</varname></link>,
|
||||
<link linkend="language.modifier.date.format"><varname>date_format</varname></link>,
|
||||
<link linkend="language.variables.smarty.now"><parameter>$smarty.now</parameter></link>
|
||||
dan the <link linkend="tips.dates">halaman tips tanggal</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,223 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.html.select.time">
|
||||
<title>{html_select_time}</title>
|
||||
<para>
|
||||
<varname>{html_select_time}</varname> adalah
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>
|
||||
yang membuat dropdowns jam untuk anda.
|
||||
Ia bisa menampilkan setiap atau seluruh jam, menit, detik dan meridian.
|
||||
</para>
|
||||
<para>
|
||||
Atribut <parameter>time</parameter> dapat memiliki format berbeda.
|
||||
Ia bisa berupa cap waktu uni, string dengan format
|
||||
<literal>YYYYMMDDHHMMSS</literal> atau string yang dapat diurai oleh
|
||||
<ulink url="&url.php-manual;strtotime"><varname>strtotime()</varname></ulink>
|
||||
PHP.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>prefix</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>Time_</entry>
|
||||
<entry>Apa yang mengawali nama var</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>time</entry>
|
||||
<entry>timestamp</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>jam sekarang</entry>
|
||||
<entry>Tanggal/jam apa yang dipakai</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>display_hours</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakah menampilkan jam atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>display_minutes</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakah menampilkan menit atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>display_seconds</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakah menampilkan detik atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>display_meridian</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakah menampilkan meridian (am/pm) atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>use_24_hours</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Apakah menggunakan waktu 24 jam atau tidak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>minute_interval</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>1</entry>
|
||||
<entry>Angka interval dalam dropdown menit</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>second_interval</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>1</entry>
|
||||
<entry>Angka interval dalam dropdown detik</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>field_array</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>n/a</entry>
|
||||
<entry>Menyimpan nilai ke array dari nama ini</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>all_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>hour_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>minute_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>second_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk select/input jika disediakan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>meridian_extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>null</entry>
|
||||
<entry>Menambahkan atribut ekstra untuk select/input jika disediakan</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>{html_select_time}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{html_select_time use_24_hours=true}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Pada 9:20 dan 23 detik di pagi hari template di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<select name="Time_Hour">
|
||||
<option value="00">00</option>
|
||||
<option value="01">01</option>
|
||||
... snipped ....
|
||||
<option value="08">08</option>
|
||||
<option value="09" selected>09</option>
|
||||
<option value="10">10</option>
|
||||
... snipped ....
|
||||
<option value="22">22</option>
|
||||
<option value="23">23</option>
|
||||
</select>
|
||||
<select name="Time_Minute">
|
||||
<option value="00">00</option>
|
||||
<option value="01">01</option>
|
||||
... snipped ....
|
||||
<option value="19">19</option>
|
||||
<option value="20" selected>20</option>
|
||||
<option value="21">21</option>
|
||||
... snipped ....
|
||||
<option value="58">58</option>
|
||||
<option value="59">59</option>
|
||||
</select>
|
||||
<select name="Time_Second">
|
||||
<option value="00">00</option>
|
||||
<option value="01">01</option>
|
||||
... snipped ....
|
||||
<option value="22">22</option>
|
||||
<option value="23" selected>23</option>
|
||||
<option value="24">24</option>
|
||||
... snipped ....
|
||||
<option value="58">58</option>
|
||||
<option value="59">59</option>
|
||||
</select>
|
||||
<select name="Time_Meridian">
|
||||
<option value="am" selected>AM</option>
|
||||
<option value="pm">PM</option>
|
||||
</select>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.variables.smarty.now"><parameter>$smarty.now</parameter></link>,
|
||||
<link linkend="language.function.html.select.date"><varname>{html_select_date}</varname></link>
|
||||
dan <link linkend="tips.dates">halaman tips tanggal</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,247 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.html.table">
|
||||
<title>{html_table}</title>
|
||||
<para>
|
||||
<varname>{html_table}</varname> adalah
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>
|
||||
yang mengeluarkan array data ke dalam HTML <literal><table></literal>.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>loop</entry>
|
||||
<entry>array</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Array data untuk diulang</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>cols</entry>
|
||||
<entry>mixed</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>3</emphasis></entry>
|
||||
<entry>
|
||||
Jumlah kolom dalam tabel atau daftar dipisahkan-koma daru nama heading
|
||||
kolom. Jika atribut-cols kosong, tapi rows disediakan, maka jumlah cols
|
||||
dihitung sejumlah rows dan jumlah elemen untuk ditampilkan cukup cols
|
||||
untuk menampilkan semua elemen. Jika kedua rows dan cols, mengabaikan
|
||||
standar cols ke 3. Jika disediakan sebagai daftar atau array, jumlah
|
||||
kolom dihitung dari jumlah elemen dalam daftar atau array.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>rows</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>
|
||||
Jumlah baris dalam tabel. Jika atribut-rows kosong, tapi cols disediakan,
|
||||
maka jumlah rows dihitung dengan jumlahcols dan jumlah elemen untuk
|
||||
ditampilkan cukup rows untuk menampilkan semua elemen.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>inner</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>cols</emphasis></entry>
|
||||
<entry>
|
||||
Arah elemen konsekutif dalam pengulangan-array yang diberikan.
|
||||
<emphasis>cols</emphasis> berarti elemen ditampilkan kolom-demi-kolom.
|
||||
<emphasis>rows</emphasis> berarti elemen ditampilkan baris-demi-baris.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>caption</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Teks yang dipakai untuk elemen <literal><caption></literal>
|
||||
tabel</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>table_attr</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>border="1"</emphasis></entry>
|
||||
<entry>Atribut untuk tag <literal><table></literal></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>th_attr</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Atribut untuk tag <literal><th></literal>
|
||||
(array diputar)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>tr_attr</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>atribut untuk tag <literal><tr></literal>
|
||||
(arrays diputar)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>td_attr</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Atribut untuk tag <literal><td></literal>
|
||||
(arrays diputar)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>trailpad</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&nbsp;</emphasis></entry>
|
||||
<entry>Nilai untuk mengisi sel sisa pada baris terakhir (jika ada)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>hdir</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>right</emphasis></entry>
|
||||
<entry>
|
||||
Arah setiap baris digambar. nilai yang mungkin:
|
||||
<emphasis>right</emphasis> (kiri-ke-kanan), dan
|
||||
<emphasis>left</emphasis> (kanan-ke-kiri)
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>vdir</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>down</emphasis></entry>
|
||||
<entry>
|
||||
Arah setiap kolom digambar. Nilai yang mungkin:
|
||||
<emphasis>down</emphasis> (atas-ke-bawah), <emphasis>up</emphasis>
|
||||
(bawah-ke-atas)
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Atribut <parameter>cols</parameter> menentukan berapa banyak kolom
|
||||
berada dalam tabel.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Nilai <parameter>table_attr</parameter>, <parameter>tr_attr</parameter>
|
||||
dan <parameter>td_attr</parameter> menentukan atribut yang diberikan ke
|
||||
tag <literal><table></literal>, <literal><tr></literal>
|
||||
dan <literal><td></literal>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Jika <parameter>tr_attr</parameter> atau <parameter>td_attr</parameter>
|
||||
adalah array, ia akan dilewati berputar.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<parameter>trailpad</parameter> adalah nilai yang disimpan ke dalam sel
|
||||
sisa pada baris tabel terakhir jika ada.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>{html_table}</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign( 'data', array(1,2,3,4,5,6,7,8,9) );
|
||||
$smarty->assign( 'tr', array('bgcolor="#eeeeee"','bgcolor="#dddddd"') );
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Variabel yang ditempatkan dari php dapat ditampilkan seperti tiga
|
||||
contoh demonstrasi. Setiap contoh menampilkan template diikuti oleh output.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{**** Contoh Satu ****}
|
||||
{html_table loop=$data}
|
||||
|
||||
<table border="1">
|
||||
<tbody>
|
||||
<tr><td>1</td><td>2</td><td>3</td></tr>
|
||||
<tr><td>4</td><td>5</td><td>6</td></tr>
|
||||
<tr><td>7</td><td>8</td><td>9</td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
{**** Contoh Dua ****}
|
||||
{html_table loop=$data cols=4 table_attr='border="0"'}
|
||||
|
||||
<table border="0">
|
||||
<tbody>
|
||||
<tr><td>1</td><td>2</td><td>3</td><td>4</td></tr>
|
||||
<tr><td>5</td><td>6</td><td>7</td><td>8</td></tr>
|
||||
<tr><td>9</td><td> </td><td> </td><td> </td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
|
||||
|
||||
{**** Contoh Tiga ****}
|
||||
{html_table loop=$data cols="first,second,third,fourth" tr_attr=$tr}
|
||||
|
||||
<table border="1">
|
||||
<thead>
|
||||
<tr>
|
||||
<th>pertama</th><th>kedua</th><th>ketiga</th><th>keempat</th>
|
||||
</tr>
|
||||
</thead>
|
||||
<tbody>
|
||||
<tr bgcolor="#eeeeee"><td>1</td><td>2</td><td>3</td><td>4</td></tr>
|
||||
<tr bgcolor="#dddddd"><td>5</td><td>6</td><td>7</td><td>8</td></tr>
|
||||
<tr bgcolor="#eeeeee"><td>9</td><td> </td><td> </td><td> </td></tr>
|
||||
</tbody>
|
||||
</table>
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
</example>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,171 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.mailto">
|
||||
<title>{mailto}</title>
|
||||
<para>
|
||||
<varname>{mailto}</varname> mengotomasi pembuatan link <literal>mailto:</literal>
|
||||
dan secara opsional mengkodekannya. Mengkodekan email menjadikannya lebih
|
||||
sulit untuk pengawas web untuk mengangkat alamat email dari sebuah situs0.
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Javascript mungkin bentuk pengkodean paling teliti, meskipun anda dapat
|
||||
menggunakan pengkodean heksa juga.
|
||||
</para>
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>address</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Alamat e-mail</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>text</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Teks untuk ditampilkan, standarnya adalah alamat e-mail</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>encode</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>none</emphasis></entry>
|
||||
<entry>Bagaimana untuk mengkodekan e-mail. Bisa berupa salah satu dari <literal>none</literal>,
|
||||
<literal>hex</literal>, <literal>javascript</literal>
|
||||
atau <literal>javascript_charcode</literal>.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>cc</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Alamat Email untuk carbon copy, pisahkan entri dengan koma.
|
||||
</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>bcc</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Alamat Email untuk blind carbon copy, pisahkan dengan koma</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>subject</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Subyek Email</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>newsgroups</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Menulis ke Newsgroups, pisahkan entri dengan koma.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>followupto</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Alamat untuk diikuti, pisahkan entri dengan koma.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>extra</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Setiap informasi ekstra yang ingin anda kirimkan ke link, seperti
|
||||
kelas style sheet</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
|
||||
<example>
|
||||
<title>contoh baris {mailto} diikuti oleh hasil</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{mailto address="me@example.com"}
|
||||
<a href="mailto:me@example.com" >me@example.com</a>
|
||||
|
||||
{mailto address="me@example.com" text="send me some mail"}
|
||||
<a href="mailto:me@example.com" >send me some mail</a>
|
||||
|
||||
{mailto address="me@example.com" encode="javascript"}
|
||||
<script type="text/javascript" language="javascript">
|
||||
eval(unescape('%64%6f% ... snipped ...%61%3e%27%29%3b'))
|
||||
</script>
|
||||
|
||||
{mailto address="me@example.com" encode="hex"}
|
||||
<a href="mailto:%6d%65.. snipped..3%6f%6d">m&..snipped...#x6f;m</a>
|
||||
|
||||
{mailto address="me@example.com" subject="Hello to you!"}
|
||||
<a href="mailto:me@example.com?subject=Hello%20to%20you%21" >me@example.com</a>
|
||||
|
||||
{mailto address="me@example.com" cc="you@example.com,they@example.com"}
|
||||
<a href="mailto:me@example.com?cc=you@example.com%2Cthey@example.com" >me@example.com</a>
|
||||
|
||||
{mailto address="me@example.com" extra='class="email"'}
|
||||
<a href="mailto:me@example.com" class="email">me@example.com</a>
|
||||
|
||||
{mailto address="me@example.com" encode="javascript_charcode"}
|
||||
<script type="text/javascript" language="javascript">
|
||||
<!--
|
||||
{document.write(String.fromCharCode(60,97, ... snipped ....60,47,97,62))}
|
||||
//-->
|
||||
</script>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.escape"><varname>escape</varname></link>,
|
||||
<link linkend="language.function.textformat"><varname>{textformat}</varname></link>
|
||||
dan
|
||||
<link linkend="tips.obfuscating.email">mengaburkan alamat email</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,203 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.math">
|
||||
<title>{math}</title>
|
||||
<para>
|
||||
<varname>{math}</varname> membolehkan desainer template untuk melakukan
|
||||
persamaan matematika dalam template.
|
||||
</para>
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Setiap variabel template numerik bisa dipakai dalam persamaa, dan hasil
|
||||
dicetak di tempat tag.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Variabel yang dipakai dalam persamaa dikirimkan sebagai parameter, yang
|
||||
bisa berupa variabel template atau nilai statis.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>+, -, /, *, abs, ceil, cos, exp, floor, log, log10, max, min,
|
||||
pi, pow, rand, round, sin, sqrt, srans dan tan adalah operator yang benar.
|
||||
Lihat dokumentasi PHP untuk informasi lebih jauh pada fungsi
|
||||
<ulink url="&url.php-manual;eval">math</ulink> ini.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Jika anda menyediakan atribut <parameter>assign</parameter>, output fungsi
|
||||
<varname>{math}</varname> akan ditempatkan ke variabel template ini daripada
|
||||
ke template.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
<varname>{math}</varname> adalah fungsi yang mahal dalam performansi
|
||||
karena penggunaannya dalam fungsi php <ulink url="&url.php-manual;eval">
|
||||
<varname>eval()</varname></ulink>. Melakukan matematika dalam PHP jauh
|
||||
lebih efisien, maka kapan saja memungkinkan lakukan perhitungan matamatika
|
||||
dalam naskah dan <link linkend="api.assign"><varname>assign()</varname></link>
|
||||
hasil ke template. Hindari fungsi panggil berulang
|
||||
<varname>{math}</varname>, misalnya dalam
|
||||
<link linkend="language.function.section"> pengulangan
|
||||
<varname>{section}</varname></link>.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>equation</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Persamaan yang dieksekusi</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>format</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Format hasil (sprintf)</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>var</entry>
|
||||
<entry>numeric</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nilai variabel persamaan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Variabel template untuk ditempati</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>[var ...]</entry>
|
||||
<entry>numeric</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Nilai variabel persamaan</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
|
||||
<example>
|
||||
<title>{math}</title>
|
||||
<para>
|
||||
<emphasis role="bold">Contoh a:</emphasis>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* $height=4, $width=5 *}
|
||||
|
||||
{math equation="x + y" x=$height y=$width}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
9
|
||||
]]>
|
||||
</screen>
|
||||
<para>
|
||||
<emphasis role="bold">Contoh b:</emphasis>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* $row_height = 10, $row_width = 20, #col_div# = 2, assigned in template *}
|
||||
|
||||
{math equation="height * width / division"
|
||||
height=$row_height
|
||||
width=$row_width
|
||||
division=#col_div#}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
100
|
||||
]]>
|
||||
</screen>
|
||||
<para>
|
||||
<emphasis role="bold">Example c:</emphasis>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* anda bisa memakai tanda kurung buka/tutup *}
|
||||
|
||||
{math equation="(( x + y ) / z )" x=2 y=10 z=2}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
6
|
||||
]]>
|
||||
</screen>
|
||||
<para>
|
||||
<emphasis role="bold">Example d:</emphasis>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* anda hanya bisa menyediakan parameter format dalam format sprintf *}
|
||||
|
||||
{math equation="x + y" x=4.4444 y=5.0000 format="%.2f"}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
9.44
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,85 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.popup.init">
|
||||
<title>{popup_init}</title>
|
||||
<para>
|
||||
<link linkend="language.function.popup"><varname>{popup}</varname></link>
|
||||
adalah integrasi dari <ulink url="&url.overLib;">overLib</ulink>,
|
||||
sebuah librari yang dipakai untuk jendela popup. Ini dipakai untuk
|
||||
informasi sensitif, seperti jendela bantuan atau tooltips.
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
<varname>{popup_init}</varname> harus dipanggil <emphasis>hanya sekali</emphasis>,
|
||||
lebih disukai di dalam tag <literal><head></literal> di setiap halaman
|
||||
yang anda rencanakan untuk menggunakan fungsi <link linkend="language.function.popup">
|
||||
<varname>{popup}</varname></link>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Path relatif ke naskah yang sedang dijalankan atau path domain lengkap,
|
||||
bukan relatif ke template.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
<ulink url="&url.overLib;">overLib</ulink> ditulis dan dipelihara oleh
|
||||
Erik Bosrup, dan homepage/download di
|
||||
<ulink url="&url.overLib;">&url.overLib;</ulink>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>{popup_init}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<head>
|
||||
{* popup_init harus dipanggil sekali di atas halam *}
|
||||
{popup_init src='javascripts/overlib/overlib.js'}
|
||||
|
||||
{* contoh url lengkap *}
|
||||
{popup_init src='http://myserver.org/my_js_libs/overlib/overlib.js'}
|
||||
</head>
|
||||
|
||||
// contoh pertama akan menampilkan
|
||||
<head>
|
||||
<div id="overDiv" style="position:absolute; visibility:hidden; z-index:1000;"></div>
|
||||
<script type="text/javascript" language="JavaScript" src="javascripts/overlib/overlib.js"></script>
|
||||
</head>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<note>
|
||||
<title>Validasi XHTML</title>
|
||||
<para><literal>{popup_init}</literal> tidak memvalidasi dengan langsung dan
|
||||
akan memperoleh kesalahan
|
||||
<literal>document type does not allow element "div" here;</literal>
|
||||
(misal tag <literal><div></literal> dalam <literal><head></literal>).
|
||||
|
||||
Ini berarti anda perlu menyertakan tag <literal><script></literal> dan
|
||||
<literal><div></literal> secara manual.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,442 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.popup">
|
||||
<title>{popup}</title>
|
||||
<para>
|
||||
<varname>{popup}</varname> dipakai untuk membuat lapisan/jendela popup
|
||||
Javascript.
|
||||
<link linkend="language.function.popup.init">
|
||||
<varname>{popup_init}</varname></link> HARUS dipanggil pertama agar ini bekerja.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>text</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>text/html untuk ditampilkan dalam jendela popup</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>trigger</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>onMouseOver</emphasis></entry>
|
||||
<entry>apa yang dipakai untuk memicu jendela popup. Ia bisa berupa
|
||||
onMouseOver atau onClick</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>sticky</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>membiarkan popup tetap tampil sampai ditutup</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>caption</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetal judul untuk dinamai</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>fgcolor</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>warna di dalam kotak popup</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>bgcolor</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>warna batas kotak popup</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>textcolor</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel warna teks di dalam kotak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>capcolor</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel warna judul kotak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>closecolor</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel warna teks tutup</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>textfont</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel font yang dipakai oleh teks utama</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>captionfont</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel font judul</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>closefont</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel font untuk teks <quote>Close</quote></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>textsize</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel besar font teks utama</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>captionsize</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel besar font judul</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>closesize</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel besar font teks <quote>Close</quote></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>width</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel panjang kotak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>height</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel tinggi kotak</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>left</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>menjadikan popup pergi ke kiri mouse</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>right</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>menjadikan popups pergi ke kanan mouse</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>center</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>menjadikan popup pergi ke tengah mouse</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>above</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>menjadikan popup di atas mouse. CATATAN: hanya mungkin
|
||||
bila tinggi sudah disetel</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>below</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>menjadikan popup di bawah mouse</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>border</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menjadikan batas popup lebih tebal atau lebih kecil</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>offsetx</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>berapa jauh poopup dari penunjuk akan ditampilkan, secara
|
||||
horisontal</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>offsety</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>berapa jauh poopup dari penunjuk akan ditampilkan, secara
|
||||
vertikal</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>fgbackground</entry>
|
||||
<entry>url to image</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menetapkan gambar yang dipakai daripada warna di dalam popup.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>bgbackground</entry>
|
||||
<entry>url to image</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menetapkan gambar yang ditetapkan daripada warna untuk batas popup.
|
||||
CATATAN: Anda ingin menyetel bgcolor ke <quote></quote> atau warna akan
|
||||
tampil juga. CATATAN: Ketika ada link Close, Netscape akan menggambar
|
||||
ulang sel tabel, menjadikan semuanya terlihat tidak benar</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>closetext</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel teks <quote>Close</quote> ke sesuatu yang lain</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>noclose</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>tidak menampilkan teks <quote>Close</quote> pada sticky dengan
|
||||
sebuah judul</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>status</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel teks dalam bar status browsers</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>autostatus</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel teks bar status ke teks popup.
|
||||
CATATAN: mengabaikan setelan status</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>autostatuscap</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyeteal teks bar status ke teks judul.
|
||||
CATATAN: mengabaikan setelan status dan autostatus</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>inarray</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>memberitahu overLib untuk membaca teks dari indeks ini dalam array
|
||||
ol_text, ditempatkan dalam overlib.js. Parameter ini bisa dipakai
|
||||
daripada teks</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>caparray</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>memberitahu overLib untuk membaca judul dari indeks ini dalam array
|
||||
ol_caps</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>capicon</entry>
|
||||
<entry>url</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menampilkan gambar yang diberikan sebelum judul popup</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>snapx</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menempelkan popup ke posisi dalam jaring horizontal</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>snapy</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menempelkan popup ke posisi dalam jaring vertikal</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>fixx</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>mengunci posisi horisontal popups Catatan:
|
||||
mengabaikan semua penempatan horisontal lain</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>fixy</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>mengunci posisi vertikal popups Catatan:
|
||||
mengabaikan semua penempatan vertikal lain</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>background</entry>
|
||||
<entry>url</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menyetel gambar yang dipakai daripada latar belakang kotak tabel</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>padx</entry>
|
||||
<entry>integer,integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>mengisi gambar latar belakang denga spasi horisontal
|
||||
untuk penempatan teks. Catatan: ini adalah dua perintah parameter</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>pady</entry>
|
||||
<entry>integer,integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>mengisi gambar latar belakang denga spasi vertikal
|
||||
untuk penempatan teks. Catatan: ini adalah dua perintah parameter</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>fullhtml</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>membolehkan anda untuk mengontrol html sepenuhnya pada gambar
|
||||
latar belakang. Kode html diharapkan dalam atribut <quote>text</quote></entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>frame</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>mengontrol popups dalam bingkai berbeda. Lihat halaman overlib
|
||||
untuk info lebih jauh atas fungsi ini</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>function</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>memanggil fungsi javascript yang ditetapkan dan mengambil
|
||||
nilai balik sebagai teks yang harus ditampilkan dalam jendela popup</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>delay</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>menjadikan popup itu seperti tooltip. Ia hanya akan muncul setelah
|
||||
tenggal dalam milidetik</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>hauto</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>otomatis menentukan apakah popup harus di sebelah kiri atau
|
||||
kanan mouse.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>vauto</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>otomatis menentukan apakah popup harus di sebelah atas atau
|
||||
bawah mouse.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>{popup}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* popup_init harus dipanggil sekali di atas halaman *}
|
||||
{popup_init src='/javascripts/overlib.js'}
|
||||
|
||||
{* buat link dengan jendela popup saat anda memindahkan mouse anda *}
|
||||
<a href="mypage.html" {popup text='This link takes you to my page!'}>mypage</a>
|
||||
|
||||
{* anda bisa memakai html, link, dll dalam teks popup anda *}
|
||||
<a href="mypage.html" {popup sticky=true caption='mypage contents'
|
||||
text="<ul><li>links</li><li>pages</li><li>images</li></ul>"
|
||||
snapx=10 snapy=10 trigger='onClick'}>mypage</a>
|
||||
|
||||
{* popup melewati sebuah sel tabel *}
|
||||
<tr><td {popup caption='Part details' text=$part_long_description}>{$part_number}</td></tr>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>Ada contoh baik lainnya di halaman
|
||||
<link linkend="language.function.capture"><varname>{capture}</varname>
|
||||
</link>.</para>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.popup.init"><varname>{popup_init}</varname></link>
|
||||
dan
|
||||
<ulink url="&url.overLib;">overLib</ulink> homepage.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,296 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.function.textformat">
|
||||
<title>{textformat}</title>
|
||||
<para>
|
||||
<varname>{textformat}</varname> adalah
|
||||
<link linkend="plugins.block.functions">fungsi blok</link> yang dipakai
|
||||
untuk membentuk teks. Pada dasarnya ia membersihkan spasi dan karakter
|
||||
khusus, dan membentuk paragraf dengan menggulung di batas dn baris
|
||||
yang menggantung.
|
||||
</para>
|
||||
<para>
|
||||
Anda bisa menyetel parameter secara eksplisit, atau memakai gaya preset.
|
||||
Saat ini <quote>email</quote> adalah satu-satunya gaya yang tersedia.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Nama Atribut</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>style</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Gaya preset</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>indent</entry>
|
||||
<entry>number</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>0</emphasis></entry>
|
||||
<entry>Jumlah karakter untuk melekuk setiap baris</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>indent_first</entry>
|
||||
<entry>number</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>0</emphasis></entry>
|
||||
<entry>Jumlah karakter untuk melekukan baris pertama</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>indent_char</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>(single space)</emphasis></entry>
|
||||
<entry>Karakter (atau string karakter) untuk melekukan</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>wrap</entry>
|
||||
<entry>number</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>80</emphasis></entry>
|
||||
<entry>Berapa banyak karakter untuk menggulung setiap barisnya</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>wrap_char</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>\n</emphasis></entry>
|
||||
<entry>Karakter (or string of chars) to break each line with</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>wrap_cut</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>&false;</emphasis></entry>
|
||||
<entry>Jika &true;, gulungan akan memecah baris di karakter yang tepat
|
||||
daripada di batas kata</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>assign</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Variabel template yang akan ditempati output</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>{textformat}</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{textformat wrap=40}
|
||||
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
|
||||
{/textformat}
|
||||
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
|
||||
This is foo. This is foo. This is foo.
|
||||
This is foo. This is foo. This is foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo. bar foo bar foo
|
||||
foo. bar foo bar foo foo. bar foo bar
|
||||
foo foo. bar foo bar foo foo. bar foo
|
||||
bar foo foo. bar foo bar foo foo.
|
||||
]]>
|
||||
</screen>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{textformat wrap=40 indent=4}
|
||||
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
|
||||
{/textformat}
|
||||
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
|
||||
This is foo. This is foo. This is
|
||||
foo. This is foo. This is foo. This
|
||||
is foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo. bar foo bar foo
|
||||
foo. bar foo bar foo foo. bar foo
|
||||
bar foo foo. bar foo bar foo foo.
|
||||
bar foo bar foo foo. bar foo bar
|
||||
foo foo.
|
||||
]]>
|
||||
</screen>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{textformat wrap=40 indent=4 indent_first=4}
|
||||
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
|
||||
{/textformat}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
|
||||
This is foo. This is foo. This
|
||||
is foo. This is foo. This is foo.
|
||||
This is foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo. bar foo bar
|
||||
foo foo. bar foo bar foo foo. bar
|
||||
foo bar foo foo. bar foo bar foo
|
||||
foo. bar foo bar foo foo. bar foo
|
||||
bar foo foo.
|
||||
]]>
|
||||
</screen>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{textformat style="email"}
|
||||
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
This is foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
bar foo bar foo foo.
|
||||
|
||||
{/textformat}
|
||||
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
|
||||
This is foo. This is foo. This is foo. This is foo. This is foo. This is
|
||||
foo.
|
||||
|
||||
This is bar.
|
||||
|
||||
bar foo bar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo
|
||||
bar foo foo. bar foo bar foo foo. bar foo bar foo foo. bar foo bar foo
|
||||
foo.
|
||||
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.strip"><varname>{strip}</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.wordwrap"><varname>wordwrap</varname></link>.
|
||||
</para>
|
||||
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,96 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.capitalize">
|
||||
<title>capitalize</title>
|
||||
<para>
|
||||
Ini dipakai untuk membesarkan huruf pertama dari seluruh kata dalam variable.
|
||||
Mirip dengan fungsi PHP <ulink url="&url.php-manual;ucfirst">
|
||||
<varname>ucfirst()</varname></ulink>.
|
||||
</para>
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&false;</entry>
|
||||
<entry>Ini menentukan apakah kata dengan digit akan dibesarkan atau
|
||||
tidak</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
<example>
|
||||
<title>capitalize</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', 'next x-men film, x3, delayed.');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|capitalize}
|
||||
{$articleTitle|capitalize:true}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
next x-men film, x3, delayed.
|
||||
Next X-Men Film, x3, Delayed.
|
||||
Next X-Men Film, X3, Delayed.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>Lihat juga
|
||||
<link linkend="language.modifier.lower"><varname>lower</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.upper"><varname>upper</varname></link>
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,84 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.cat">
|
||||
<title>cat</title>
|
||||
<para>
|
||||
Nilai ini digabungkan ke variabel yang disediakan.
|
||||
</para>
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="cat" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Nilai ini menggabung variabel yang disediakan.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>cat</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', "Psychics predict world didn't end");
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle|cat:' yesterday.'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Psychics predict world didn't end yesterday.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,96 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.count.characters">
|
||||
<title>count_characters</title>
|
||||
<para>
|
||||
Ini akan dipakai untuk menghitung jumlah karakter dalam variabel.
|
||||
</para>
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&false;</entry>
|
||||
<entry>Ini menentukan apakah menyertakan karakter spasi dalam
|
||||
hitungan atau tidak.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>count_characters</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', 'Cold Wave Linked to Temperatures.');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|count_characters}
|
||||
{$articleTitle|count_characters:true}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Cold Wave Linked to Temperatures.
|
||||
29
|
||||
33
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.count.words"><varname>count_words</varname></link>,
|
||||
<link linkend="language.modifier.count.sentences"><varname>count_sentences</varname></link> dan
|
||||
<link linkend="language.modifier.count.paragraphs"><varname>count_paragraphs</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.count.paragraphs">
|
||||
<title>count_paragraphs</title>
|
||||
<para>
|
||||
Ini dipakai untuk menghitung jumlah paragraf dalam variabel.
|
||||
</para>
|
||||
<example>
|
||||
<title>count_paragraphs</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle',
|
||||
"War Dims Hope for Peace. Child's Death Ruins Couple's Holiday.\n\n
|
||||
Man is Fatally Slain. Death Causes Loneliness, Feeling of Isolation."
|
||||
);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|count_paragraphs}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
War Dims Hope for Peace. Child's Death Ruins Couple's Holiday.
|
||||
|
||||
Man is Fatally Slain. Death Causes Loneliness, Feeling of Isolation.
|
||||
2
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.count.characters"><varname>count_characters</varname></link>,
|
||||
<link linkend="language.modifier.count.sentences"><varname>count_sentences</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.count.words"><varname>count_words</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.count.sentences">
|
||||
<title>count_sentences</title>
|
||||
<para>
|
||||
Ini dipakai untuk menghitung jumlah kalimat dalam variabel.
|
||||
</para>
|
||||
<example>
|
||||
<title>count_sentences</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle',
|
||||
'Two Soviet Ships Collide - One Dies.
|
||||
Enraged Cow Injures Farmer with Axe.'
|
||||
);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|count_sentences}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Two Soviet Ships Collide - One Dies. Enraged Cow Injures Farmer with Axe.
|
||||
2
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.count.characters"><varname>count_characters</varname></link>,
|
||||
<link linkend="language.modifier.count.paragraphs"><varname>count_paragraphs</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.count.words"><varname>count_words</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,66 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.count.words">
|
||||
<title>count_words</title>
|
||||
<para>
|
||||
Ini dipakai untuk menghitung jumlah kata dalam variabel.
|
||||
</para>
|
||||
<example>
|
||||
<title>count_words</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', 'Dealers Will Hear Car Talk at Noon.');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|count_words}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Dealers Will Hear Car Talk at Noon.
|
||||
7
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.count.characters"><varname>count_characters</varname></link>,
|
||||
<link linkend="language.modifier.count.paragraphs"><varname>count_paragraphs</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.count.sentences"><varname>count_sentences</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,287 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.date.format">
|
||||
<title>date_format</title>
|
||||
<para>
|
||||
Ini membentuk tanggal dan jam ke format
|
||||
<ulink url="&url.php-manual;strftime"><varname>strftime()</varname></ulink>
|
||||
yang disediakan.
|
||||
Tanggal dapat dikirimkan ke Smarty sebagai
|
||||
<ulink url="&url.php-manual;function.time">timestamps</ulink> unix, mysql timestamps
|
||||
atau string lain yang terdiri dari bulan hari tahun, dapat diuraikan oleh
|
||||
<ulink url="&url.php-manual;strtotime"><varname>strtotime()</varname></ulink> php.
|
||||
Desainer dapat memakai <varname>date_format</varname> untuk mengontrol
|
||||
sepenuhnya pembentukan tanggal. Jika tanggal yang dikiriimkan ke
|
||||
<varname>date_format</varname> kosong dan parameter kedua dikirimkan, itu akan
|
||||
dipakai sebagai format tanggal.
|
||||
</para>
|
||||
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>%b %e, %Y</entry>
|
||||
<entry>Ini adalah format untuk tanggal yang ditampilkan.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>2</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>n/a</entry>
|
||||
<entry>Ini adalah tanggal standar jika input kosong.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<para>
|
||||
<note>
|
||||
<para>
|
||||
Sejak Smarty-2.6.10 nilai numerik yang dikirimkan ke <varname>date_format</varname>
|
||||
<emphasis>selalu</emphasis> (kecuali untuk cap waktu mysql, lihat di bawah)
|
||||
diinterpretasikan sebagai cap waktu unix.
|
||||
</para>
|
||||
<para>
|
||||
Sebelum Smarty-2.6.10 string numerik yang juga dapat diuraikan oleh
|
||||
<varname>strtotime()</varname> dalam php (seperti <literal>YYYYMMDD</literal>)
|
||||
di mana kadang-kadang (tergantung pada dasar implementasi
|
||||
<varname>strtotime()</varname>) diinterpretasikan sebagai string tanggal
|
||||
BUKAN sebagai cap waktu.
|
||||
</para>
|
||||
<para>
|
||||
Satu-satunya kekecualian adalah cap waktu mysql: Ia juga hanya numerik dan
|
||||
panjang karakternya 14 (<literal>YYYYMMDDHHMMSS</literal>),
|
||||
cap waktu mysql memiliki awalan dibanding cap waktu unix.
|
||||
</para>
|
||||
</note>
|
||||
<note>
|
||||
<title>Catatan pemrogram</title>
|
||||
<para>
|
||||
<varname>date_format</varname> pelapis penting untuk fungsi PHP
|
||||
<ulink url="&url.php-manual;strftime"><varname>strftime()</varname></ulink>.
|
||||
Anda dapat mempunyai penentu konversi lebih atau sedikit disediakan
|
||||
tergantung pada fungsi <ulink url="&url.php-manual;strftime"><varname>strftime()</varname></ulink>
|
||||
sistem anda di mana PHP dikompilasi. Periksa halaman manual sistem untuk
|
||||
daftar lengkap dari penentu yang benar. Akan tetapi, sedikit penentu
|
||||
diemulasikan pada Windows. Ini adalah: %D, %e, %h, %l, %n,
|
||||
%r, %R, %t, %T.
|
||||
</para>
|
||||
</note>
|
||||
</para>
|
||||
<example>
|
||||
<title>date_format</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$config['date'] = '%I:%M %p';
|
||||
$config['time'] = '%H:%M:%S';
|
||||
$smarty->assign('config', $config);
|
||||
$smarty->assign('yesterday', strtotime('-1 day'));
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Template ini menggunakan <link linkend="language.variables.smarty.now">
|
||||
<parameter>$smarty.now</parameter></link> untuk mendapatkan jam saat ini:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$smarty.now|date_format}
|
||||
{$smarty.now|date_format:"%D"}
|
||||
{$smarty.now|date_format:$config.date}
|
||||
{$yesterday|date_format}
|
||||
{$yesterday|date_format:"%A, %B %e, %Y"}
|
||||
{$yesterday|date_format:$config.time}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Contoh di atas akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Jan 1, 2022
|
||||
01/01/22
|
||||
02:33 pm
|
||||
Dec 31, 2021
|
||||
Monday, December 1, 2021
|
||||
14:33:00
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
|
||||
Penentu konversi <command>date_format</command>:
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
%a - singkatan nama hari dalam minggu berdasarkan lokal saat ini
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%A - nama hari lengkap berdasarkan lokal saat ini
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%b - singkatan nama bulan berdasarkan lokal saat ini
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%B - nama bulan lengkap berdasarkan lokal saat ini
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%c - representasi tanggal dan jam yang lebih disukai berdasarkan lokal saat ini
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%C - angka abad (tahun dibagi 100 dan dipotong ke integer, (mulai 00 sampai 99)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%d - hari pada bulan sebagai angka desimal (mulai 01 sampai 31)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%D - same as %m/%d/%y
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%e - hari dalam bulan sebagai angka desimal, digit tunggal diawali dengan
|
||||
spasi (mulai 1 sampai 31)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%g - tahun berbasis-Minggu di dalam abad [00,99]
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%G - tahun berbasis-Minggu, termasuk abad [0000,9999]
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%h - sama seperti %b
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%H - jam sebagai angka desimal menggunakan waktu 24-jam (mulai 00 sampai 23)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%I - jam sebagai angka desimal menggunakan waktu 12-jam (mulai 01 sampai 12)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%j - hari dalam tahun sebagai angka desimal (mulai 001 sampai 366)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%k - Jam (waktu 24-jam) digit tunggal diawali dengan kosng. (mulai 0 sampai 23)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%l - jam sebagai angka desimal menggunakan waktu 12-jam, digit tunggal
|
||||
diawali dengan spasi (mulai 1 sampai 12)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%m - bulan sebagai angka desimal (mulai 01 sampai 12)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%M - menit sebagai angka desimal
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%n - karakter baris baru
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%p - baik `am' ataupun `pm' berdasarkan nilai waktu yang disediakan,
|
||||
atau string terkait untuk lokal saat ini
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%r - jam dalam notasi a.m. dan p.m.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%R - jam dalam notasi 24 jam
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%S - detik sebagai angka desimal
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%t - karakter tab
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%T - jam sekarang, sama dengan %H:%M:%S
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%u - hari dalam minggu sebagai angka desimal [1,7], dengan1 mewakili Senin
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%U - angka minggu dari tahun sekarang sebagai angka desimal, dimulai dengan
|
||||
Minggu sebagai hari pertama dari minggu pertama
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%V - Angka minggu ISO 8601:1988 dari tahun sekarang sebagai angka desimal,
|
||||
mulai 01 sampai 53, di mana minggu 1 adalah minggu pertama yang mempunyai
|
||||
setidaknya 4 hari dalam tahun sekarang, dan dengan Senin sebagai hari
|
||||
pertama dalam seminggu.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%w - hari dari minggu sebagai desimal, Minggu adalah 0
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%W - angka minggu dari tahun sekarang sebagai angka desimal, dimulai
|
||||
dengan Senin pertama sebagai hari pertama dari minggu pertama
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%x - representasi tanggal yang lebih disukai untuk lokal saat ini tanpa jam
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%X - representasi jam yang lebih disukai untuk lokal saat ini tanpa tanggal
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%y - tahun sebagai angka desimal tanpa abad (mulai 00 sampai 99)
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%Y - tahun sebagai angka desimal termasuk abad
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%Z - zona waktu atau nama atau singkatan
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
%% - karakter literal `%'
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
</para>
|
||||
<para>
|
||||
Lihat juga <link linkend="language.variables.smarty.now"><parameter>$smarty.now</parameter></link>,
|
||||
<ulink url="&url.php-manual;strftime"><varname>strftime()</varname></ulink>,
|
||||
<link linkend="language.function.html.select.date"><varname>{html_select_date}</varname></link>
|
||||
dan halaman <link linkend="tips.dates">tips tanggal</link> page.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
||||
|
||||
|
@@ -0,0 +1,111 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.default">
|
||||
<title>default</title>
|
||||
<para>
|
||||
Ini dipakai untuk menyetel nilai standar untuk sebuah variabel. Jika
|
||||
variabel tidak disetel atau string kosong, nilai standar diberikan untuk
|
||||
dicetak. Default memerlukan satu argumen.
|
||||
</para>
|
||||
<para>
|
||||
<note>
|
||||
<para>
|
||||
Dengan <ulink url="&url.php-manual;error_reporting">
|
||||
<varname>error_reporting(E_ALL)</varname></ulink>,
|
||||
variabel yang tidak dideklarasikan akan selalu menghasilkan kesalahan
|
||||
di dalam template. Fungsi ini berguna untuk mengganti string dengan
|
||||
panjang null atau nol.
|
||||
</para>
|
||||
</note>
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>empty</emphasis></entry>
|
||||
<entry>Ini adalah nilai standar untuk ditampilkan jika
|
||||
variabel kosong.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>default</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', 'Dealers Will Hear Car Talk at Noon.');
|
||||
$smarty->assign('email', '');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle|default:'no title'}
|
||||
{$myTitle|default:'no title'}
|
||||
{$email|default:'No email address available'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Dealers Will Hear Car Talk at Noon.
|
||||
no title
|
||||
No email address available
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="tips.default.var.handling">penanganan variabel standar</link>
|
||||
dan halaman
|
||||
<link linkend="tips.blank.var.handling">penanganan variabel kosong</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,159 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.escape">
|
||||
<title>escape</title>
|
||||
<para>
|
||||
<varname>escape</varname> dipakai untuk mengkodekan atau mengubah variabel ke contohnya <literal>html</literal>,
|
||||
<literal>url</literal>, <literal>tanda kutip tunggal</literal>,
|
||||
<literal>heksa</literal>, <literal>heksentitas</literal>,
|
||||
<literal>javascript</literal> dan <literal>mail</literal>.
|
||||
Standarnya <literal>html</literal>.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="6">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="possible" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Nilai yang Mungkin</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><literal>html</literal>, <literal>htmlall</literal>,
|
||||
<literal>url</literal>,
|
||||
<literal>urlpathinfo</literal>, <literal>quotes</literal>,
|
||||
<literal>hex</literal>, <literal>hexentity</literal>,
|
||||
<literal>javascript</literal>, <literal>mail</literal>
|
||||
</entry>
|
||||
<entry><literal>html</literal></entry>
|
||||
<entry>Ini adalah format escape yang digunakan.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>2</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><literal>ISO-8859-1</literal>, <literal>UTF-8</literal>,
|
||||
dan setiap karakter yang didukung oleh
|
||||
<ulink url="&url.php-manual;htmlentities">
|
||||
<varname>htmlentities()</varname></ulink>
|
||||
</entry>
|
||||
<entry><literal>ISO-8859-1</literal></entry>
|
||||
<entry>Set karakter yang semuanya dikirimkan ke htmlentities().</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>escape</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle',
|
||||
"'Stiff Opposition Expected to Casketless Funeral Plan'"
|
||||
);
|
||||
$smarty->assign('EmailAddress','smarty@example.com');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ini adalah contoh baris template <literal>escape</literal> diikuti oleh output
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
'Stiff Opposition Expected to Casketless Funeral Plan'
|
||||
|
||||
{$articleTitle|escape}
|
||||
'Stiff Opposition Expected to Casketless Funeral Plan'
|
||||
|
||||
{$articleTitle|escape:'html'} {* escapes & " ' < > *}
|
||||
'Stiff Opposition Expected to Casketless Funeral Plan'
|
||||
|
||||
{$articleTitle|escape:'htmlall'} {* escapes SEMUA entri html *}
|
||||
'Stiff Opposition Expected to Casketless Funeral Plan'
|
||||
|
||||
<a href="?title={$articleTitle|escape:'url'}">click here</a>
|
||||
<a href="?title=%27Stiff+Opposition+Expected+to+Casketless+Funeral+Plan%27">click here</a>
|
||||
|
||||
{$articleTitle|escape:'quotes'}
|
||||
\'Stiff Opposition Expected to Casketless Funeral Plan\'
|
||||
|
||||
<a href="mailto:{$EmailAddress|escape:"hex"}">{$EmailAddress|escape:"hexentity"}</a>
|
||||
{$EmailAddress|escape:'mail'} {* this converts to email to text *}
|
||||
<a href="mailto:%62%6f%..snip..%65%74">bob..snip..et</a>
|
||||
|
||||
{'mail@example.com'|escape:'mail'}
|
||||
smarty [AT] example [DOT] com
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Contoh lain</title>
|
||||
<para>Fungsi PHP dapat dipakai sebagai pengubah,
|
||||
<link linkend="variable.security">
|
||||
<varname>$security</varname></link> yang mengijinkan.
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
{* parameter "rewind" meregistrasi lokasi sekarang *}
|
||||
<a href="{$SCRIPT_NAME}?page=foo&rewind={$smarty.server.REQUEST_URI|urlencode}">click here</a>
|
||||
]]>
|
||||
</screen>
|
||||
<para>This snippet is useful for emails, but see also
|
||||
<link linkend="language.function.mailto">
|
||||
<varname>{mailto}</varname></link></para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
{* alamat email dipotong *}
|
||||
<a href="mailto:{$EmailAddress|escape:'hex'}">{$EmailAddress|escape:'mail'}</a>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.escaping">escaping penguraian smarty</link>,
|
||||
<link linkend="language.function.mailto"><varname>{mailto}</varname></link>
|
||||
dan halaman
|
||||
<link linkend="tips.obfuscating.email">mengaburkan alamat email</link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,127 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.indent">
|
||||
<title>indent</title>
|
||||
<para>
|
||||
Ini menggantungstring di setiap baris, standarnya 4. Sebagai parameter
|
||||
opsional, anda dapat menetapkan jumlah karakter untuk digantung. Sebagai
|
||||
parameter opsional kedua, anda dapat menetapkan karakter yang dipakai
|
||||
untuk menggantung misalnya memakai <literal>"\t"</literal> untuk tab.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc" />
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>4</entry>
|
||||
<entry>Ini menentukan berapa banyak karakter yang digantung
|
||||
to.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>2</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>(satu spasi)</entry>
|
||||
<entry>Ini adalah karakter yang digunakan untuk menggantung.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>indent</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle',
|
||||
'NJ judge to rule on nude beach.
|
||||
Sun or rain expected today, dark tonight.
|
||||
Statistics show that teen pregnancy drops off significantly after 25.'
|
||||
);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
|
||||
{$articleTitle|indent}
|
||||
|
||||
{$articleTitle|indent:10}
|
||||
|
||||
{$articleTitle|indent:1:"\t"}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
NJ judge to rule on nude beach.
|
||||
Sun or rain expected today, dark tonight.
|
||||
Statistics show that teen pregnancy drops off significantly after 25.
|
||||
|
||||
NJ judge to rule on nude beach.
|
||||
Sun or rain expected today, dark tonight.
|
||||
Statistics show that teen pregnancy drops off significantly after 25.
|
||||
|
||||
NJ judge to rule on nude beach.
|
||||
Sun or rain expected today, dark tonight.
|
||||
Statistics show that teen pregnancy drops off significantly after 25.
|
||||
|
||||
NJ judge to rule on nude beach.
|
||||
Sun or rain expected today, dark tonight.
|
||||
Statistics show that teen pregnancy drops off significantly after 25.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.strip"><varname>strip</varname></link>,
|
||||
<link linkend="language.modifier.wordwrap"><varname>wordwrap</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.spacify"><varname>spacify</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.lower">
|
||||
<title>lower</title>
|
||||
<para>
|
||||
Ini dipakai untuk mengecilkan variabel. Ini sama dengan fungsi PHP
|
||||
<ulink url="&url.php-manual;strtolower">
|
||||
<varname>strtolower()</varname></ulink>.
|
||||
</para>
|
||||
<example>
|
||||
<title>lower</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', 'Two Convicts Evade Noose, Jury Hung.');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|lower}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ini akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Two Convicts Evade Noose, Jury Hung.
|
||||
two convicts evade noose, jury hung.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.upper"><varname>upper</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.capitalize"><varname>capitalize</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.nl2br">
|
||||
<title>nl2br</title>
|
||||
<para>
|
||||
Semua pemisah baris <literal>"\n"</literal> akan diubah ke tag html
|
||||
<literal><br /></literal> dalam variabel yang disediakan.
|
||||
Ini sama dengan fungsi PHP <ulink url="&url.php-manual;nl2br">
|
||||
<varname>nl2br()</varname></ulink>.
|
||||
</para>
|
||||
<example>
|
||||
<title>nl2br</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle',
|
||||
"Sun or rain expected\ntoday, dark tonight"
|
||||
);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle|nl2br}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Sun or rain expected<br />today, dark tonight
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.wordwrap"><varname>word_wrap</varname></link>,
|
||||
<link linkend="language.modifier.count.paragraphs"><varname>count_paragraphs</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.count.sentences"><varname>count_sentences</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,106 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.regex.replace">
|
||||
<title>regex_replace</title>
|
||||
<para>
|
||||
Pencarian ekspresi reguler dan penggantian pada variabel. Gunakan sintaks
|
||||
<ulink url="&url.php-manual;preg_replace">
|
||||
<varname>preg_replace()</varname></ulink> dari manual PHP.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc"/>
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Ini adalah ekspresi reguler untuk diganti.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>2</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Ini adalah string teks untuk mengganti.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>regex_replace</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', "Infertility unlikely to\nbe passed on, experts say.");
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* replace each carriage return, tab and new line with a space *}
|
||||
|
||||
{$articleTitle}
|
||||
{$articleTitle|regex_replace:"/[\r\t\n]/":" "}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Infertility unlikely to
|
||||
be passed on, experts say.
|
||||
Infertility unlikely to be passed on, experts say.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga <link linkend="language.modifier.replace">
|
||||
<varname>replace</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.escape"><varname>escape</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,105 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.replace">
|
||||
<title>replace</title>
|
||||
<para>
|
||||
Pencarian sederhana dan penggantian pada variabel. Ini sama dengan fungsi
|
||||
PHP <ulink url="&url.php-manual;str_replace">
|
||||
<varname>str_replace()</varname></ulink>.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc"/>
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Ini adalah string teks untuk diganti.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>2</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Ini adalah string teks untuk mengganti.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>replace</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', "Child's Stool Great for Use in Garden.");
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|replace:'Garden':'Vineyard'}
|
||||
{$articleTitle|replace:' ':' '}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Child's Stool Great for Use in Garden.
|
||||
Child's Stool Great for Use in Vineyard.
|
||||
Child's Stool Great for Use in Garden.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.regex.replace"><varname>regex_replace</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.escape"><varname>escape</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,98 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.spacify">
|
||||
<title>spacify</title>
|
||||
<para>
|
||||
<varname>spacify</varname> adalah cara untuk menyisipkan spasi diantara
|
||||
setiap karakter dari variabel.
|
||||
Anda bisa secara opsional mengirimkan karakter atau string berbeda
|
||||
untuk disisipkan.
|
||||
</para>
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc"/>
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry><emphasis>satu spasi</emphasis></entry>
|
||||
<entry>Ini akan disisipkan diantara setiap karakter dari variabel.</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>spacify</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle', 'Something Went Wrong in Jet Crash, Experts Say.');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|spacify}
|
||||
{$articleTitle|spacify:"^^"}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Something Went Wrong in Jet Crash, Experts Say.
|
||||
S o m e t h i n g W .... snip .... s h , E x p e r t s S a y .
|
||||
S^^o^^m^^e^^t^^h^^i^^n^^g^^ .... snip .... ^^e^^r^^t^^s^^ ^^S^^a^^y^^.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.wordwrap"><varname>wordwrap</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.nl2br"><varname>nl2br</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,98 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.string.format">
|
||||
<title>string_format</title>
|
||||
<para>
|
||||
Ini adalah cara untuk membentuk string, seperti angka desimal dan
|
||||
semacamnya. Gunakan sintaks
|
||||
<ulink url="&url.php-manual;sprintf"><varname>sprintf()</varname></ulink>
|
||||
untuk pembentukan.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc"/>
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Ya</entry>
|
||||
<entry><emphasis>n/a</emphasis></entry>
|
||||
<entry>Ini adalah format apa yang dipakai. (sprintf)</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>string_format</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('number', 23.5787446);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$number}
|
||||
{$number|string_format:"%.2f"}
|
||||
{$number|string_format:"%d"}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
23.5787446
|
||||
23.58
|
||||
24
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
See also
|
||||
<link linkend="language.modifier.date.format"><varname>date_format</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,99 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.strip.tags">
|
||||
<title>strip_tags</title>
|
||||
<para>
|
||||
Ini memotong tag markup, pada dasarnya apapun diantara
|
||||
<literal><</literal> dan <literal>></literal>.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc"/>
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>bool</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&true;</entry>
|
||||
<entry>Ini menentukan apakah tag diganti dengan ' ' atau ''</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>strip_tags</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle',
|
||||
"Blind Woman Gets <font face=\"helvetica\">New
|
||||
Kidney</font> from Dad she Hasn't Seen in <b>years</b>."
|
||||
);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|strip_tags} {* same as {$articleTitle|strip_tags:true} *}
|
||||
{$articleTitle|strip_tags:false}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Blind Woman Gets <font face="helvetica">New Kidney</font> from Dad she Hasn't Seen in <b>years</b>.
|
||||
Blind Woman Gets New Kidney from Dad she Hasn't Seen in years .
|
||||
Blind Woman Gets New Kidney from Dad she Hasn't Seen in years.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.replace"><varname>replace</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.regex.replace"><varname>regex_replace</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,75 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.strip">
|
||||
<title>strip</title>
|
||||
<para>
|
||||
Ini mengganti semua spasi yang berulang, baris baru dan tab dengan spasi
|
||||
tunggal, atau dengan string yang disertakan.
|
||||
</para>
|
||||
<note>
|
||||
<title>Catatan</title>
|
||||
<para>
|
||||
Jika anda ingin memotong blok teks template, gunakan fungsi built-in <link
|
||||
linkend="language.function.strip"><varname>{strip}</varname></link>.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>strip</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('articleTitle', "Grandmother of\neight makes\t hole in one.");
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|strip}
|
||||
{$articleTitle|strip:' '}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Grandmother of
|
||||
eight makes hole in one.
|
||||
Grandmother of eight makes hole in one.
|
||||
Grandmother of eight makes hole in one.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.strip"><varname>{strip}</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.truncate"><varname>truncate</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,129 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.truncate">
|
||||
<title>truncate</title>
|
||||
<para>
|
||||
Ini memotong variabel ke panjang karakter, standarnya 80.
|
||||
Sebagai parameter opsional kedua, anda bisa menetapkan string teks yang
|
||||
ditampilkan di akhir jika variabel dipotong. Karakter dalam string
|
||||
disertakan dengan panjang pemotongan asli.
|
||||
Standarnya, <varname>truncate</varname> akan mencoba untuk memotong di
|
||||
batas kata. Jika anda ingin memotong di panjang karakter persis,
|
||||
kirimkan parameter opsional ketiga dengan &true;.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc"/>
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>80</entry>
|
||||
<entry>Ini menentukan berapa banyak karakter untuk dipotong.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>2</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>...</entry>
|
||||
<entry>Ini adalah teks string yang mengganti teks yang dipotong.
|
||||
Panjangya disertakan dalam setelan panjang pemotongan.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>3</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&false;</entry>
|
||||
<entry>Ini menentukan apakah memotong di batas kata dengan &false;
|
||||
atau tidak, atau di persis karakter dengan &true;.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>4</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&false;</entry>
|
||||
<entry>Ini menentukan apakah pemotongan terjadi di akhir string dengan
|
||||
&false;, atau ditengah string dengan &true;.
|
||||
Catatan bahwa jika setelan adalah &true;, maka batas kata diabaikan.
|
||||
</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>truncate</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('articleTitle', 'Two Sisters Reunite after Eighteen Years at Checkout Counter.');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|truncate}
|
||||
{$articleTitle|truncate:30}
|
||||
{$articleTitle|truncate:30:""}
|
||||
{$articleTitle|truncate:30:"---"}
|
||||
{$articleTitle|truncate:30:"":true}
|
||||
{$articleTitle|truncate:30:"...":true}
|
||||
{$articleTitle|truncate:30:'..':true:true}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ini akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Two Sisters Reunite after Eighteen Years at Checkout Counter.
|
||||
Two Sisters Reunite after Eighteen Years at Checkout Counter.
|
||||
Two Sisters Reunite after...
|
||||
Two Sisters Reunite after
|
||||
Two Sisters Reunite after---
|
||||
Two Sisters Reunite after Eigh
|
||||
Two Sisters Reunite after E...
|
||||
Two Sisters Re..ckout Counter.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,65 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.upper">
|
||||
<title>upper</title>
|
||||
<para>
|
||||
Ini dipakai untuk membesarkan variabel. Ini sama dengan fungsi PHP
|
||||
<ulink url="&url.php-manual;strtoupper">
|
||||
<varname>strtoupper()</varname></ulink>.
|
||||
</para>
|
||||
<example>
|
||||
<title>upper</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('articleTitle', "If Strike isn't Settled Quickly it may Last a While.");
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
{$articleTitle|upper}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
If Strike isn't Settled Quickly it may Last a While.
|
||||
IF STRIKE ISN'T SETTLED QUICKLY IT MAY LAST A WHILE.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.lower"><varname>lower</varname></link>
|
||||
dan
|
||||
<link linkend="language.modifier.capitalize"><varname>capitalize</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,143 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.modifier.wordwrap">
|
||||
<title>wordwrap</title>
|
||||
<para>
|
||||
Menggulung string ke panjang kolom, standarnya 80. Sebagai parameter
|
||||
opsional kedua, anda dapat menetapkan string teks untuk menggulung
|
||||
teks ke baris berikutnya, biasanya adalah carriage return
|
||||
<literal>"\n"</literal>.
|
||||
Standarnya, <varname>wordwrap</varname> akan mencoba untuk menggulung
|
||||
di batas kata. Jika anda ingin memotong persis di panjang karakter,
|
||||
kirimkan parameter opsional ketiga sebagai &true;. Ini sama dengan
|
||||
fungsi PHP
|
||||
<ulink url="&url.php-manual;wordwrap"><varname>wordwrap()</varname></ulink>.
|
||||
</para>
|
||||
|
||||
<informaltable frame="all">
|
||||
<tgroup cols="5">
|
||||
<colspec colname="param" align="center" />
|
||||
<colspec colname="type" align="center" />
|
||||
<colspec colname="required" align="center" />
|
||||
<colspec colname="default" align="center" />
|
||||
<colspec colname="desc"/>
|
||||
<thead>
|
||||
<row>
|
||||
<entry>Posisi Parameter</entry>
|
||||
<entry>Tipe</entry>
|
||||
<entry>Diperlukan</entry>
|
||||
<entry>Default</entry>
|
||||
<entry>Deskripsi</entry>
|
||||
</row>
|
||||
</thead>
|
||||
<tbody>
|
||||
<row>
|
||||
<entry>1</entry>
|
||||
<entry>integer</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>80</entry>
|
||||
<entry>Ini menentukan berapa banyak kolom digulung.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>2</entry>
|
||||
<entry>string</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>\n</entry>
|
||||
<entry>Ini adalah string yang dipakai untuk menggulung kata.</entry>
|
||||
</row>
|
||||
<row>
|
||||
<entry>3</entry>
|
||||
<entry>boolean</entry>
|
||||
<entry>Tidak</entry>
|
||||
<entry>&false;</entry>
|
||||
<entry>Ini menentukan apakah menggulung di batas kata (&false;) atau tidak,
|
||||
atau persis di karakter (&true;).</entry>
|
||||
</row>
|
||||
</tbody>
|
||||
</tgroup>
|
||||
</informaltable>
|
||||
|
||||
<example>
|
||||
<title>wordwrap</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty->assign('articleTitle',
|
||||
"Blind woman gets new kidney from dad she hasn't seen in years."
|
||||
);
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$articleTitle}
|
||||
|
||||
{$articleTitle|wordwrap:30}
|
||||
|
||||
{$articleTitle|wordwrap:20}
|
||||
|
||||
{$articleTitle|wordwrap:30:"<br />\n"}
|
||||
|
||||
{$articleTitle|wordwrap:26:"\n":true}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Akan memperlihatkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Blind woman gets new kidney from dad she hasn't seen in years.
|
||||
|
||||
Blind woman gets new kidney
|
||||
from dad she hasn't seen in
|
||||
years.
|
||||
|
||||
Blind woman gets new
|
||||
kidney from dad she
|
||||
hasn't seen in
|
||||
years.
|
||||
|
||||
Blind woman gets new kidney<br />
|
||||
from dad she hasn't seen in<br />
|
||||
years.
|
||||
|
||||
Blind woman gets new kidn
|
||||
ey from dad she hasn't se
|
||||
en in years.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.modifier.nl2br"><varname>nl2br</varname></link>
|
||||
dan
|
||||
<link linkend="language.function.textformat"><varname>{textformat}</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,203 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.assigned.variables">
|
||||
<title>Variabel ditempatkan dari PHP</title>
|
||||
<para>
|
||||
Variabel
|
||||
<link linkend="api.assign">assigned</link> dari PHP direferensi oleh
|
||||
pendahulunya dengan tanda dolar <literal>$</literal> (seperti php).
|
||||
Variabel yang ditempati dari dalam template dengan fungsi
|
||||
<link linkend="language.function.assign"><varname>{assign}</varname></link>
|
||||
juga ditampilkan dengan cara ini.
|
||||
</para>
|
||||
|
||||
<example>
|
||||
<title>Variabel yang ditempati</title>
|
||||
<para> naskah php</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
$smarty = new Smarty();
|
||||
|
||||
$smarty->assign('firstname', 'Doug');
|
||||
$smarty->assign('lastname', 'Evans');
|
||||
$smarty->assign('meetingPlace', 'New York');
|
||||
|
||||
$smarty->display('index.tpl');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
di mana konten <filename>index.tpl</filename> adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
Hello {$firstname} {$lastname}, glad to see you can make it.
|
||||
<br />
|
||||
{* ini tidak akan bekerja karena $variables adalah sensitif huruf *}
|
||||
This weeks meeting is in {$meetingplace}.
|
||||
{* ini akan bekerja *}
|
||||
This weeks meeting is in {$meetingPlace}.
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
<para>
|
||||
Output di atas:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
Hello Doug Evans, glad to see you can make it.
|
||||
<br />
|
||||
This weeks meeting is in .
|
||||
This weeks meeting is in New York.
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
|
||||
|
||||
<sect2 id="language.variables.assoc.arrays">
|
||||
<title>Array asosiatif</title>
|
||||
<para>
|
||||
Anda juga bisa mereferensi variabel array asosiatif yang ditempatkan dari
|
||||
PHP dengan menetapkan kunci setelah simbol '.' (titik).
|
||||
</para>
|
||||
<example>
|
||||
<title>Mengakses variabel array asosiatif</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('Contacts',
|
||||
array('fax' => '555-222-9876',
|
||||
'email' => 'zaphod@slartibartfast.example.com',
|
||||
'phone' => array('home' => '555-444-3333',
|
||||
'cell' => '555-111-1234')
|
||||
)
|
||||
);
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
di mana konten <filename>index.tpl</filename> adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$Contacts.fax}<br />
|
||||
{$Contacts.email}<br />
|
||||
{* anda dapat menampilkan array dari array juga *}
|
||||
{$Contacts.phone.home}<br />
|
||||
{$Contacts.phone.cell}<br />
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
ini akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
555-222-9876<br />
|
||||
zaphod@slartibartfast.example.com<br />
|
||||
555-444-3333<br />
|
||||
555-111-1234<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="language.variables.array.indexes">
|
||||
<title>Indeks array</title>
|
||||
<para>
|
||||
Anda bisa mereferensi array dengan indeksnya, lebih mirip dengan sintaks PHP.
|
||||
</para>
|
||||
<example>
|
||||
<title>Mengakses array dengan indeks</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->assign('Contacts', array(
|
||||
'555-222-9876',
|
||||
'zaphod@slartibartfast.example.com',
|
||||
array('555-444-3333',
|
||||
'555-111-1234')
|
||||
));
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
di mana <filename>index.tpl</filename> adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$Contacts[0]}<br />
|
||||
{$Contacts[1]}<br />
|
||||
{* anda dapat menampilkan arrays dari arrays juga *}
|
||||
{$Contacts[2][0]}<br />
|
||||
{$Contacts[2][1]}<br />
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ini akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
555-222-9876<br />
|
||||
zaphod@slartibartfast.example.com<br />
|
||||
555-444-3333<br />
|
||||
555-111-1234<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
|
||||
<sect2 id="language.variables.objects">
|
||||
<title>Obyek</title>
|
||||
<para>
|
||||
Properti <link linkend="advanced.features.objects">obyek</link>
|
||||
yang ditempatkan dari PHP dapat direferensi dengan menetapkan nama properti
|
||||
setelah simbol <literal>-></literal>.
|
||||
</para>
|
||||
<example>
|
||||
<title>Mengakses properti obyek</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
name: {$person->name}<br />
|
||||
email: {$person->email}<br />
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
ini akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
name: Zaphod Beeblebrox<br />
|
||||
email: zaphod@slartibartfast.example.com<br />
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
</sect2>
|
||||
</sect1>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,119 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.config.variables">
|
||||
<title>Variabel yang diambil dari file config</title>
|
||||
<para>
|
||||
Variabel yang diambil dari <link linkend="config.files">file config</link>
|
||||
direferensi dengan menutupinya dalam <literal>#tanda kris#</literal>,
|
||||
atau dengan variabel smarty <link linkend="language.variables.smarty.config">
|
||||
<parameter>$smarty.config</parameter></link>.
|
||||
Sintaks terakhir berguna untuk menyertakan ke dalam nilai atribut bertanda
|
||||
kutip.
|
||||
</para>
|
||||
<example>
|
||||
<title>variabel config</title>
|
||||
<para>
|
||||
Contoh file config - <filename>foo.conf</filename>:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
pageTitle = "This is mine"
|
||||
bodyBgColor = '#eeeeee'
|
||||
tableBorderSize = 3
|
||||
tableBgColor = "#bbbbbb"
|
||||
rowBgColor = "#cccccc"
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Template yang memperlihatkan metode <parameter>#hash#</parameter>:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{config_load file='foo.conf'}
|
||||
<html>
|
||||
<title>{#pageTitle#}</title>
|
||||
<body bgcolor="{#bodyBgColor#}">
|
||||
<table border="{#tableBorderSize#}" bgcolor="{#tableBgColor#}">
|
||||
<tr bgcolor="{#rowBgColor#}">
|
||||
<td>First</td>
|
||||
<td>Last</td>
|
||||
<td>Address</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Template yang memperlihatkan metode
|
||||
<link linkend="language.variables.smarty.config">
|
||||
<parameter>$smarty.config</parameter></link>:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{config_load file='foo.conf'}
|
||||
<html>
|
||||
<title>{$smarty.config.pageTitle}</title>
|
||||
<body bgcolor="{$smarty.config.bodyBgColor}">
|
||||
<table border="{$smarty.config.tableBorderSize}" bgcolor="{$smarty.config.tableBgColor}">
|
||||
<tr bgcolor="{$smarty.config.rowBgColor}">
|
||||
<td>First</td>
|
||||
<td>Last</td>
|
||||
<td>Address</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Kedua contoh akan menampilkan:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<html>
|
||||
<title>This is mine</title>
|
||||
<body bgcolor="#eeeeee">
|
||||
<table border="3" bgcolor="#bbbbbb">
|
||||
<tr bgcolor="#cccccc">
|
||||
<td>First</td>
|
||||
<td>Last</td>
|
||||
<td>Address</td>
|
||||
</tr>
|
||||
</table>
|
||||
</body>
|
||||
</html>
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Variabel file config tidak bisa dipakai sampai setelah diambil dari file
|
||||
config. Prosedur ini dijelaskan nanti dalam dokumen ini di bawah
|
||||
<link linkend="language.function.config.load">
|
||||
<varname>{config_load}</varname></link>.
|
||||
</para>
|
||||
<para>
|
||||
Lihat juga <link linkend="language.syntax.variables">variabel</link> dan
|
||||
<link linkend="language.variables.smarty">variabel terpakai $smarty</link>
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,227 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="language.variables.smarty">
|
||||
<title>variabel terpakai {$smarty}</title>
|
||||
<para>
|
||||
variabel PHP terpakai <parameter>{$smarty}</parameter> bisa digunakan untuk
|
||||
mengakses beberapa lingkungan dan variabel permintaan. Daftar lengkapnya
|
||||
sebagai berikut.
|
||||
</para>
|
||||
|
||||
<sect2 id="language.variables.smarty.request">
|
||||
<title>Variabel permintaan</title>
|
||||
<para>
|
||||
<ulink url="&url.php-manual;reserved.variables">variabel permintaan
|
||||
</ulink> seperti <literal>$_GET</literal>, <literal>$_POST</literal>,
|
||||
<literal>$_COOKIE</literal>, <literal>$_SERVER</literal>,
|
||||
<literal>$_ENV</literal> dan <literal>$_SESSION</literal>
|
||||
(lihat <link linkend="variable.request.vars.order">
|
||||
<varname>$request_vars_order</varname></link>
|
||||
dan <link linkend="variable.request.use.auto.globals">
|
||||
<varname>$request_use_auto_globals</varname></link>)
|
||||
bisa diakses seperti diperlihatkan dalam contoh di bawah ini:
|
||||
</para>
|
||||
<example>
|
||||
<title>Menampilkan variabel permintaan</title>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* menampilkan nilai halaman dari URL ($_GET) http://www.example.com/index.php?page=foo *}
|
||||
{$smarty.get.page}
|
||||
|
||||
{* menampilkan variabel "page" dari sebuah formulir ($_POST['page']) *}
|
||||
{$smarty.post.page}
|
||||
|
||||
{* menampilkan nilai cookie "username" ($_COOKIE['username']) *}
|
||||
{$smarty.cookies.username}
|
||||
|
||||
{* menampilkan variabel server "SERVER_NAME" ($_SERVER['SERVER_NAME'])*}
|
||||
{$smarty.server.SERVER_NAME}
|
||||
|
||||
{* menampilkan variabel lingkungan sistem "PATH" *}
|
||||
{$smarty.env.PATH}
|
||||
|
||||
{* menampilkan variabel sesi php "id" ($_SESSION['id']) *}
|
||||
{$smarty.session.id}
|
||||
|
||||
{* menampilkan "username" dari gabungan get/post/cookies/server/env *}
|
||||
{$smarty.request.username}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<note>
|
||||
<para>
|
||||
Untuk alasan historis <parameter>{$SCRIPT_NAME}</parameter> dapat diakses
|
||||
secara langsung, meskipun <parameter>{$smarty.server.SCRIPT_NAME}</parameter>
|
||||
adalah cara yang diusulkan untuk mengakses nilai ini.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<a href="{$SCRIPT_NAME}?page=smarty">click me</a>
|
||||
<a href="{$smarty.server.SCRIPT_NAME}?page=smarty">click me</a>
|
||||
]]>
|
||||
</programlisting>
|
||||
</note>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.now">
|
||||
<title>{$smarty.now}</title>
|
||||
<para>
|
||||
<ulink url="&url.php-manual;function.time">Cap waktu</ulink> saat ini
|
||||
bisa diakses dengan <parameter>{$smarty.now}</parameter>.
|
||||
Nilai merefleksikan jumlah detik berlalu sejak apa yang disebut
|
||||
Epoch pada 1 Januari 1970, dan dapat dikirimkan secara langsung ke
|
||||
pengubah
|
||||
<link linkend="language.modifier.date.format"><varname>date_format</varname>
|
||||
</link> untuk ditampilkan. Catatan bahwa
|
||||
<ulink url="&url.php-manual;function.time"><varname>time()</varname></ulink>
|
||||
dipanggil setiap kali ada permintaan; misalnya naskah yang mengambil
|
||||
tiga detik untuk dijalankan dengan sebuah panggilan ke
|
||||
<parameter>$smarty.now</parameter> di awal dan akhir akan menampilkan
|
||||
perbedaan tiga detik.
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* gunakan pengubah date_format untuk menampilkan tangal dan jam saat ini *}
|
||||
{$smarty.now|date_format:'%Y-%m-%d %H:%M:%S'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.const">
|
||||
<title>{$smarty.const}</title>
|
||||
<para>
|
||||
Anda dapat mengakses nilai konstan PHP secara langsung. Lihat juga <link
|
||||
linkend="smarty.constants">konstan smarty</link>.
|
||||
</para>
|
||||
<informalexample>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// konstan yang didefinisikan dalam php
|
||||
define('MY_CONST_VAL','CHERRIES');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
<para>Output konstan dalam template</para>
|
||||
<informalexample>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{$smarty.const.MY_CONST_VAL}
|
||||
]]>
|
||||
</programlisting>
|
||||
</informalexample>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.capture">
|
||||
<title>{$smarty.capture}</title>
|
||||
<para>
|
||||
Output template ditangkap melalui fungsi built-in
|
||||
<link linkend="language.function.capture">
|
||||
<varname>{capture}..{/capture}</varname></link> bisa diakses menggunakan
|
||||
variabel <parameter>{$smarty.capture}</parameter>.
|
||||
Lihat halaman <link linkend="language.function.capture">
|
||||
<varname>{capture}</varname></link> untuk informasi lebih jauh.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.config">
|
||||
<title>{$smarty.config}</title>
|
||||
<para>
|
||||
Variabel <parameter>{$smarty.config}</parameter> bisa digunakan untuk
|
||||
merujuk ke <link linkend="language.config.variables">variabel config</link>
|
||||
yang diambil.
|
||||
<parameter>{$smarty.config.foo}</parameter> adalah sinonim untuk
|
||||
<parameter>{#foo#}</parameter>. Lihat halaman
|
||||
<link linkend="language.function.config.load">{config_load}</link> untuk
|
||||
informasi lebih jauh.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.loops">
|
||||
<title>{$smarty.section}, {$smarty.foreach}</title>
|
||||
<para>
|
||||
Variabel <parameter>{$smarty.section}</parameter> dan
|
||||
<parameter>{$smarty.foreach}</parameter> dapat digunakan untuk merujuk ke
|
||||
masing-masing properti pengulangan
|
||||
<link linkend="language.function.section"><varname>{section}</varname></link>
|
||||
dan
|
||||
<link linkend="language.function.foreach"><varname>{foreach}</varname></link>.
|
||||
Ini memiliki beberapa nilai kegunaan seperti
|
||||
<varname>.first</varname>, <varname>.index</varname>, dll.
|
||||
</para>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.template">
|
||||
<title>{$smarty.template}</title>
|
||||
<para>
|
||||
Mengembalikan nama template yang sedang diproses saat ini. Contoh berikut
|
||||
memperlihatkan <filename>container.tpl</filename> dan
|
||||
<filename>banner.tpl</filename> yang disertakan dengan
|
||||
<parameter>{$smarty.template}</parameter> di dalam keduanya.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<b>Main container is {$smarty.template}</b>
|
||||
{include file='banner.tpl'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
akan menampilkan
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<b>Main page is container.tpl</b>
|
||||
banner.tpl
|
||||
]]>
|
||||
</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.version">
|
||||
<title>{$smarty.version}</title>
|
||||
<para>
|
||||
Mengembalikan versi Smarty di mana template sudah dikompilasi dengannya.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<div id="footer">Powered by Smarty {$smarty.version}</div>
|
||||
]]>
|
||||
</programlisting>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="language.variables.smarty.ldelim">
|
||||
<title>{$smarty.ldelim}, {$smarty.rdelim}</title>
|
||||
<para>
|
||||
Variabel ini dipakai untuk mencetak nilai pembatas-kiri dan pembatas-kanan
|
||||
secara literal, sama seperti <link linkend="language.function.ldelim">
|
||||
<varname>{ldelim},{rdelim}</varname></link>.
|
||||
</para>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.assigned.variables">variabel yang ditempati</link> dan
|
||||
<link linkend="language.config.variables">variabel config</link>
|
||||
</para>
|
||||
</sect2>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,142 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="advanced.features.objects">
|
||||
<title>Obyek</title>
|
||||
<para>
|
||||
Smarty membolehkan akses ke
|
||||
<ulink url="&url.php-manual;object">obyek</ulink> PHP melalui template.
|
||||
Ada dua cara untuk mengaksesnya.
|
||||
</para>
|
||||
|
||||
<itemizedlist spacing="compact">
|
||||
<listitem><para>
|
||||
Cara pertama adalah <link linkend="api.register.object">meregistrasi obyek</link> ke
|
||||
template, lalu menaksesnya via sintaks mirip dengan
|
||||
<link linkend="language.custom.functions">fungsi kustom</link>.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Cara kedua adalah fungsi <link linkend="api.assign"><varname>assign()</varname>
|
||||
</link> obyek ke template dan mengaksesnya seperti halnya variabel lainnya yang
|
||||
ditempati.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<para>
|
||||
Metode pertama ini merupakan sintaks template lebih baik. Ia juga lebih aman,
|
||||
karena obyek terdaftar dapat dibatasi ke metode atau properti tertentu. AKan tetapi,
|
||||
<emphasis role="bold">obyek terdaftar tidak bisa diulang terus menerus atau ditempati
|
||||
dalam obyek arrays</emphasis>, dll. Metode yang anda pilih akan ditentukan oleh
|
||||
kebutuhan anda, tapi gunakan metode pertama bila memungkinkan untuk
|
||||
memelihara sintaks template menjadi minimum.
|
||||
</para>
|
||||
<para>
|
||||
Jika <link linkend="variable.security"><parameter>$security</parameter></link>
|
||||
dihidupkan, tidak ada metode privat atau fungsi yang dapat diakses
|
||||
(diawali dengan '_'). Jika ada metode dan properti dari nama yang sama,
|
||||
metode yang akan dipakai.
|
||||
</para>
|
||||
<para>
|
||||
Anda dapat membatasi metode dan propertis yang bisa diakses dengan
|
||||
mendaftarkannya dalam sebuah array sebagai parameter ketiga registrasi.
|
||||
</para>
|
||||
<para>
|
||||
Secara standar, parameter dioperkan ke obyek melaluis template, dioperkan
|
||||
dengan cara yang sama
|
||||
<link linkend="language.custom.functions">fungsi kustom</link> mendapatkannya.
|
||||
Array asosiatif dioper sebagai parameter pertama, dan obyek smarty sebagai
|
||||
yang kedua. Jika anda menginginkan parameter mengoper satu parameter
|
||||
sekali waktu untuk setiap argumen seperti pengoperan parameter obyek
|
||||
tradisional, set parameter registrasi ke empat dengan &false;.
|
||||
</para>
|
||||
<para>
|
||||
Parameter opsional ke lima hanya berpengaruh dengan
|
||||
<parameter>format</parameter> dijadikan &true;
|
||||
dan berisi daftar metode yang seharusnya diperlakukan sebagai blok. Itu
|
||||
berarti metode ini mempunyai tag penutup dalam template
|
||||
(<literal>{foobar->meth2}...{/foobar->meth2}</literal>) dan
|
||||
parameter pada metode mempunyai sinopsis yang sama seperti parameter
|
||||
untuk
|
||||
<link linkend="plugins.block.functions">
|
||||
<varname>block-function-plugins</varname></link>:
|
||||
Ia medapatkan empat parameters
|
||||
<parameter>$params</parameter>,
|
||||
<parameter>$content</parameter>,
|
||||
<parameter>&$smarty</parameter> dan
|
||||
<parameter>&$repeat</parameter> dan juga bertindak seperti
|
||||
block-function-plugins.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan obyek teregistrasi atau ditempatkan</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// obyek
|
||||
|
||||
class My_Object {
|
||||
function meth1($params, &$smarty_obj) {
|
||||
return 'this is my meth1';
|
||||
}
|
||||
}
|
||||
|
||||
$myobj = new My_Object;
|
||||
|
||||
// meregistrasi obyek (akan menjadi referensi)
|
||||
$smarty->register_object('foobar',$myobj);
|
||||
|
||||
// Jika kita ingin membatasi akses ke metode atau properti tertentu, daftarkan
|
||||
$smarty->register_object('foobar',$myobj,array('meth1','meth2','prop1'));
|
||||
|
||||
// Jika anda ingin menggunakan format parameter obyek tradisional, operkan nilai boolean false
|
||||
$smarty->register_object('foobar',$myobj,null,false);
|
||||
|
||||
// Kita juga menempatkan obyek. assign_by_ref bila memungkinkan.
|
||||
$smarty->assign_by_ref('myobj', $myobj);
|
||||
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Dan ini adalah bagaimana untuk mengakses obyek anda dalam <filename>index.tpl</filename>:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* akses obyek teregistrasi kita*}
|
||||
{foobar->meth1 p1='foo' p2=$bar}
|
||||
|
||||
{* anda juga dapat menempatkan output *}
|
||||
{foobar->meth1 p1='foo' p2=$bar assign='output'}
|
||||
the output was {$output}
|
||||
|
||||
{* akses obyek kita yang sudah ditempatkan *}
|
||||
{$myobj->meth1('foo',$bar)}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga <link
|
||||
linkend="api.register.object"><varname>register_object()</varname></link>
|
||||
dan
|
||||
<link linkend="api.assign"><varname>assign()</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,80 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="advanced.features.outputfilters">
|
||||
<title>Filter Output</title>
|
||||
<para>
|
||||
Ketika template dipanggil via
|
||||
<link linkend="api.display"><varname>display()</varname></link> atau
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>, outputnya bisa
|
||||
dikirimkan melalui satu atau lebih filter output. Ini berbeda dari
|
||||
<link linkend="advanced.features.postfilters">
|
||||
<varname>postfilters</varname></link>
|
||||
karena postfilters beroperasi pada template terkompilasi sebelum disimpan
|
||||
ke disk, sedangkan filter output beroperasi pada output template ketika ia
|
||||
dijalankan.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Filter output bisa
|
||||
<link linkend="api.register.outputfilter">teregistrasi</link> atau diambil dari
|
||||
<link linkend="variable.plugins.dir">direktori plugins</link> dengan
|
||||
menggunakan metode
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>
|
||||
atau dengan menyetel variabel <link linkend="variable.autoload.filters">
|
||||
<parameter>$autoload_filters</parameter></link>.
|
||||
Smarty akan mengoper output template sebagai argumen pertama,
|
||||
dan mengharapkan fungsi untuk mengembalikan hasil proses.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan template outputfilter</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// simpan ini dalam aplikasi anda
|
||||
function protect_email($tpl_output, &$smarty)
|
||||
{
|
||||
$tpl_output =
|
||||
preg_replace('!(\S+)@([a-zA-Z0-9\.\-]+\.([a-zA-Z]{2,3}|[0-9]{1,3}))!',
|
||||
'$1%40$2', $tpl_output);
|
||||
return $tpl_output;
|
||||
}
|
||||
|
||||
// daftarkan outputfilter
|
||||
$smarty->register_outputfilter('protect_email');
|
||||
$smarty->display('index.tpl');
|
||||
|
||||
// sekarang setiap ada alamat email dalam output template akan mempunyai
|
||||
// perlindungan sederhana terhadap spambots
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.register.outputfilter"><varname>register_outpurfilter()</varname></link>,
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>,
|
||||
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>,
|
||||
<link linkend="advanced.features.postfilters">postfilters</link> dan
|
||||
<link linkend="variable.plugins.dir"><parameter>$plugins_dir</parameter></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,73 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="advanced.features.postfilters">
|
||||
<title>Postfilters</title>
|
||||
<para>
|
||||
Template postfilters adalah fungsi PHP di mana templates anda dijalankan
|
||||
<emphasis>setelah dikompilasi</emphasis>. Postfilters bisa
|
||||
<link linkend="api.register.postfilter">teregistrasi</link> atau diambil dari
|
||||
<link linkend="variable.plugins.dir">direktori plugins</link>
|
||||
dengan menggunakan fungsi
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>
|
||||
atau dengan menyetel variabel <link linkend="variable.autoload.filters">
|
||||
<parameter>$autoload_filters</parameter></link>.
|
||||
Smarty akan mengoper kode template terkompilasi sebagai argumen,
|
||||
dan mengharapkan fungsi untuk mengembalikan hasil pemrosesan.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan template postfilter</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// simpan ini dalam aplikasi anda
|
||||
function add_header_comment($tpl_source, &$smarty)
|
||||
{
|
||||
return "<?php echo \"<!-- Created by Smarty! -->\n\"; ?>\n".$tpl_source;
|
||||
}
|
||||
|
||||
// daftarkan postfilter
|
||||
$smarty->register_postfilter('add_header_comment');
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Postfilter di atas akan membuat Smarty template
|
||||
terkompilasi
|
||||
<filename>index.tpl</filename> terlihat seperti:
|
||||
</para>
|
||||
<screen>
|
||||
<![CDATA[
|
||||
<!-- Created by Smarty! -->
|
||||
{* konten template seterusnya... *}
|
||||
]]>
|
||||
</screen>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.register.postfilter"><varname>register_postfilter()</varname></link>,
|
||||
<link linkend="advanced.features.prefilters">prefilters</link>
|
||||
dan
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,72 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="advanced.features.prefilters">
|
||||
<title>Prefilters</title>
|
||||
<para>
|
||||
Template prefilters adalah fungsi PHP di mana template anda dijalankan
|
||||
<emphasis>sebelum dikompilasi</emphasis>. Ini bagus untuk preproses
|
||||
template anda untuk menghapus komentar yang tidak diinginkan, mengawasi
|
||||
apa yang disimpan orang dalam templatenya, dll.
|
||||
</para>
|
||||
<para>
|
||||
Prefilters bisa <link
|
||||
linkend="api.register.prefilter">teregistrasi</link> atau diambil dari
|
||||
<link linkend="variable.plugins.dir">direktori plugins</link>
|
||||
dengan menggunakan fungsi <link
|
||||
linkend="api.load.filter"><varname>load_filter()</varname></link> atau dengan
|
||||
menyetel variabel <link linkend="variable.autoload.filters">
|
||||
<parameter>$autoload_filters</parameter></link>.
|
||||
</para>
|
||||
<para>
|
||||
Smarty akan mengoper kode sumber template sebagai argumen pertama, dan
|
||||
mengharapkan fungsi untuk mengembalikan hasil kode sumbber template.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan template prefilter</title>
|
||||
<para>
|
||||
Ini akan menghapus semua komentar html dalam sumber template.
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// simpan ini dalam aplikasi anda
|
||||
function remove_dw_comments($tpl_source, &$smarty)
|
||||
{
|
||||
return preg_replace("/<!--#.*-->/U",'',$tpl_source);
|
||||
}
|
||||
|
||||
// daftarkan prefilter
|
||||
$smarty->register_prefilter('remove_dw_comments');
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
</example>
|
||||
<para>Lihat juga
|
||||
<link linkend="api.register.prefilter"><varname>register_prefilter()</varname></link>,
|
||||
<link linkend="advanced.features.postfilters">postfilters</link>
|
||||
dan
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>.
|
||||
</para>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,191 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="section.template.cache.handler.func">
|
||||
<title>Fungsi Pengendali Cache</title>
|
||||
<para>
|
||||
Sebagai alternatif untuk menggunakan mekanisme cache berbasis-file
|
||||
standar, anda bisa menetapkan fungsi penanganan cache kustom yang
|
||||
akan digunakan untuk
|
||||
<literal>membaca</literal>, <literal>menulis</literal> dan
|
||||
<literal>membersihkan</literal> file yang di-cache.
|
||||
</para>
|
||||
<para>
|
||||
Buat sebuah fungsi dalam aplikasi anda yang akan digunakan Smarty
|
||||
sebagai pengendali cache. Set namanya dalam variabel kelas
|
||||
<link linkend="variable.cache.handler.func">
|
||||
<parameter>$cache_handler_func</parameter></link>
|
||||
. Smarty
|
||||
sekarang akan menggunakan ini untuk menangani data yang di-cache.
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Argumen pertama adalah aksi, yang akan berupa salah satu dari
|
||||
<literal>read</literal>, <literal>write</literal> dan
|
||||
<literal>clear</literal>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Parameter kedua adalah obyek Smarty.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>Paremeter ketiga adalah konten yang di-cache.
|
||||
Setelah <literal>menulis</literal>, Smarty mengoper konten yang
|
||||
di-cache dalam parameter ini. Setelah <literal>membaca</literal>,
|
||||
Smarty mengharapkan fungsi anda untuk menerima parameter ini
|
||||
dengan referensi dan menempatkannya dengan data yang di-cache.
|
||||
Setelah <literal>membersihkan</literal>, mengoper variabel dummy
|
||||
di sini karena ia tidak digunakan.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Parameter ke empat adalah <parameter>nama</parameter> file template
|
||||
,
|
||||
diperlukan untuk membaca/menulis.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Parameter ke lima adalah opsional <parameter>$cache_id</parameter>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Parameter ke enam adalah opsional <link linkend="variable.compile.id">
|
||||
<parameter>$compile_id</parameter></link>.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Parameter ke tujuh dan parameter terakhir <parameter>$exp_time</parameter>
|
||||
ditambahkan dalam Smarty-2.6.0.
|
||||
</para></listitem>
|
||||
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>Contoh menggunakan MySQL sebagai sumber cache</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
/**************************************************
|
||||
contoh pemakaian:
|
||||
|
||||
include('Smarty.class.php');
|
||||
include('mysql_cache_handler.php');
|
||||
|
||||
$smarty = new Smarty;
|
||||
$smarty->cache_handler_func = 'mysql_cache_handler';
|
||||
|
||||
$smarty->display('index.tpl');
|
||||
|
||||
|
||||
database mysql diharapkan dalam format ini:
|
||||
|
||||
create database SMARTY_CACHE;
|
||||
|
||||
create table CACHE_PAGES(
|
||||
CacheID char(32) PRIMARY KEY,
|
||||
CacheContents MEDIUMTEXT NOT NULL
|
||||
);
|
||||
|
||||
**************************************************/
|
||||
|
||||
function mysql_cache_handler($action, &$smarty_obj, &$cache_content, $tpl_file=null, $cache_id=null, $compile_id=null, $exp_time=null)
|
||||
{
|
||||
// set db host, user dan sandi di sini
|
||||
$db_host = 'localhost';
|
||||
$db_user = 'myuser';
|
||||
$db_pass = 'mypass';
|
||||
$db_name = 'SMARTY_CACHE';
|
||||
$use_gzip = false;
|
||||
|
||||
// buat id cache unik
|
||||
$CacheID = md5($tpl_file.$cache_id.$compile_id);
|
||||
|
||||
if(! $link = mysql_pconnect($db_host, $db_user, $db_pass)) {
|
||||
$smarty_obj->_trigger_error_msg('cache_handler: could not connect to database');
|
||||
return false;
|
||||
}
|
||||
mysql_select_db($db_name);
|
||||
|
||||
switch ($action) {
|
||||
case 'read':
|
||||
// baca cache dari database
|
||||
$results = mysql_query("select CacheContents from CACHE_PAGES where CacheID='$CacheID'");
|
||||
if(!$results) {
|
||||
$smarty_obj->_trigger_error_msg('cache_handler: query failed.');
|
||||
}
|
||||
$row = mysql_fetch_array($results,MYSQL_ASSOC);
|
||||
|
||||
if($use_gzip && function_exists('gzuncompress')) {
|
||||
$cache_content = gzuncompress($row['CacheContents']);
|
||||
} else {
|
||||
$cache_content = $row['CacheContents'];
|
||||
}
|
||||
$return = $results;
|
||||
break;
|
||||
case 'write':
|
||||
// simpan cache ke database
|
||||
|
||||
if($use_gzip && function_exists("gzcompress")) {
|
||||
// compress the contents for storage efficiency
|
||||
$contents = gzcompress($cache_content);
|
||||
} else {
|
||||
$contents = $cache_content;
|
||||
}
|
||||
$results = mysql_query("replace into CACHE_PAGES values(
|
||||
'$CacheID',
|
||||
'".addslashes($contents)."')
|
||||
");
|
||||
if(!$results) {
|
||||
$smarty_obj->_trigger_error_msg('cache_handler: query failed.');
|
||||
}
|
||||
$return = $results;
|
||||
break;
|
||||
case 'clear':
|
||||
// clear cache info
|
||||
if(empty($cache_id) && empty($compile_id) && empty($tpl_file)) {
|
||||
// clear them all
|
||||
$results = mysql_query('delete from CACHE_PAGES');
|
||||
} else {
|
||||
$results = mysql_query("delete from CACHE_PAGES where CacheID='$CacheID'");
|
||||
}
|
||||
if(!$results) {
|
||||
$smarty_obj->_trigger_error_msg('cache_handler: query failed.');
|
||||
}
|
||||
$return = $results;
|
||||
break;
|
||||
default:
|
||||
// salah, aksi tidak dikenal
|
||||
$smarty_obj->_trigger_error_msg("cache_handler: unknown action \"$action\"");
|
||||
$return = false;
|
||||
break;
|
||||
}
|
||||
mysql_close($link);
|
||||
return $return;
|
||||
|
||||
}
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
261
docs/id/programmers/advanced-features/template-resources.xml
Normal file
261
docs/id/programmers/advanced-features/template-resources.xml
Normal file
@@ -0,0 +1,261 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<sect1 id="template.resources">
|
||||
<title>Sumber daya</title>
|
||||
<para>
|
||||
Template mungkin berasal dari berbagai sumber. Ketika anda
|
||||
<link linkend="api.display"><varname>display()</varname></link> atau
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>
|
||||
sebuah template, atau saat anda menyertakan template dari dalam
|
||||
template lain,
|
||||
anda menyertakan sebuah tipe sumber daya, diikuti
|
||||
oleh path dan nama template terkait. Jika sumber daya tidak secara
|
||||
eksplisit diberi nilai, <link
|
||||
linkend="variable.default.resource.type">
|
||||
<parameter>$default_resource_type</parameter></link> yang diasumsikan.
|
||||
</para>
|
||||
|
||||
<sect2 id="templates.from.template.dir">
|
||||
<title>Templates dari $template_dir</title>
|
||||
<para>
|
||||
Template dari <link linkend="variable.template.dir">
|
||||
<parameter>$template_dir</parameter></link> tidak membutuhkan sumber
|
||||
daya template
|
||||
, meskipun anda dapat menggunakan sumber daya
|
||||
<literal>file:</literal> untuk konsistensi. Cukup sertakan path ke template yang
|
||||
ingin anda gunakan relatif ke direktori akar <link linkend="variable.template.dir">
|
||||
<parameter>$template_dir</parameter></link>.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan template dari $template_dir</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->display('index.tpl');
|
||||
$smarty->display('admin/menu.tpl');
|
||||
$smarty->display('file:admin/menu.tpl'); // sama seperti yang di atas
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Dari dalam template Smarty</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{include file='index.tpl'}
|
||||
{* di bawah ini sama seperti yang di atas*}
|
||||
{include file='file:index.tpl'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
<sect2 id="templates.from.any.dir">
|
||||
<title>Template dari direktori mana saja</title>
|
||||
<para>
|
||||
Template di luar <link linkend="variable.template.dir">
|
||||
<parameter>$template_dir</parameter></link>
|
||||
memerlukan tipe sumber daya template <literal>file:</literal>, diikuti
|
||||
oleh path absolut ke template.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan template daru direktori mana saja</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->display('file:/export/templates/index.tpl');
|
||||
$smarty->display('file:/path/to/my/templates/menu.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Dan dari dalam template Smarty:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{include file='file:/usr/local/share/templates/navigation.tpl'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<sect3 id="templates.windows.filepath">
|
||||
<title>Path file Windows</title>
|
||||
<para>
|
||||
Jika anda menggunakan mesin Windows, path file biasanya menyertakan
|
||||
sebuah huruf drive (C:) di awal nama path. Pastikan untuk menggunakan
|
||||
<literal>file:</literal> dalam path guna menghindari konflik namespace dan
|
||||
memperoleh hasil yang diinginkan.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan template dari path file windows</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->display('file:C:/export/templates/index.tpl');
|
||||
$smarty->display('file:F:/path/to/my/templates/menu.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Dan dari dalam template Smarty:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{include file='file:D:/usr/local/share/templates/navigation.tpl'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect3>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="templates.from.elsewhere">
|
||||
<title>Template dari sumber daya lain</title>
|
||||
<para>
|
||||
Anda dapat mengambil template menggunakan sumber daya apapun
|
||||
yang mungkin anda akses dengan PHP: database, soket, LDAP, dan
|
||||
seterusnya. Anda melakukan ini dengan menulis fungsi plugins
|
||||
sumber daya dan mendaftarkannya dengan Smarty.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat seksi <link linkend="plugins.resources">plugins sumber daya</link>
|
||||
untuk informasi lebih jauh mengenai fungsi yang harus anda sediakan.
|
||||
</para>
|
||||
|
||||
<note>
|
||||
<para>
|
||||
Catatan bahwa anda tidak bisa menimpa sumber daya built-in
|
||||
<literal>file:</literal>, tapi anda dapat menyediakan sumber daya yang
|
||||
mengambil template dari sistem file dalam beberapa cara lain dengan
|
||||
mendaftarkan di bawah nama sumber daya lain.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>Menggunakan sumber daya kustom</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// simpan fungsi ini di mana saja dalam aplikasi anda
|
||||
function db_get_template ($tpl_name, &$tpl_source, &$smarty_obj)
|
||||
{
|
||||
// lakukan pemanggilan database di sini untuk mengambil template anda,
|
||||
// populasikan $tpl_source
|
||||
$sql = new SQL;
|
||||
$sql->query("select tpl_source
|
||||
from my_table
|
||||
where tpl_name='$tpl_name'");
|
||||
if ($sql->num_rows) {
|
||||
$tpl_source = $sql->record['tpl_source'];
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function db_get_timestamp($tpl_name, &$tpl_timestamp, &$smarty_obj)
|
||||
{
|
||||
// tidak ada pemanggilan database di sini untuk mempopulasikan $tpl_timestamp.
|
||||
$sql = new SQL;
|
||||
$sql->query("select tpl_timestamp
|
||||
from my_table
|
||||
where tpl_name='$tpl_name'");
|
||||
if ($sql->num_rows) {
|
||||
$tpl_timestamp = $sql->record['tpl_timestamp'];
|
||||
return true;
|
||||
} else {
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
function db_get_secure($tpl_name, &$smarty_obj)
|
||||
{
|
||||
// menganggap seluruh template aman
|
||||
return true;
|
||||
}
|
||||
|
||||
function db_get_trusted($tpl_name, &$smarty_obj)
|
||||
{
|
||||
// tidak digunakan untu templates
|
||||
}
|
||||
|
||||
// mendaftarkan nama sumber daya "db"
|
||||
$smarty->register_resource("db", array("db_get_template",
|
||||
"db_get_timestamp",
|
||||
"db_get_secure",
|
||||
"db_get_trusted"));
|
||||
|
||||
// menggunakan sumber daya dari naskah php
|
||||
$smarty->display("db:index.tpl");
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Dan dari dalam template Smarty:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{include file='db:/extras/navigation.tpl'}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
|
||||
<sect2 id="default.template.handler.function">
|
||||
<title>Fungsi pengendali template default</title>
|
||||
<para>
|
||||
Anda bisa menetapkan fungsi yang dipakai untuk mengambil
|
||||
konten template
|
||||
seandainya template tidak dapat diambil dari
|
||||
sumber dayanya. Satu kegunaan dari ini adalah untuk membuat
|
||||
template yang tidak ada secara-langsung.
|
||||
</para>
|
||||
<example>
|
||||
<title>Menggunakan fungsi pengendali template default</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// simpan ini di mana saja dalam aplikasi anda
|
||||
|
||||
function make_template ($resource_type, $resource_name, &$template_source, &$template_timestamp,
|
||||
&$smarty_obj)
|
||||
{
|
||||
if( $resource_type == 'file' ) {
|
||||
if ( ! is_readable ( $resource_name )) {
|
||||
// buat file template, hasilkan konten.
|
||||
$template_source = "This is a new template.";
|
||||
require_once SMARTY_CORE_DIR . 'core.write_file.php';
|
||||
smarty_core_write_file( array( 'filename'=>$smarty_obj->template_dir . DIRECTORY_SEPARATOR . $resource_name, 'contents'=>$template_source ), $smarty_obj );
|
||||
return true;
|
||||
}
|
||||
} else {
|
||||
// bukan sebuah file
|
||||
return false;
|
||||
}
|
||||
}
|
||||
|
||||
// set pengendali standar
|
||||
$smarty->default_template_handler_func = 'make_template';
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</sect2>
|
||||
</sect1>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
71
docs/id/programmers/api-functions/api-append-by-ref.xml
Normal file
71
docs/id/programmers/api-functions/api-append-by-ref.xml
Normal file
@@ -0,0 +1,71 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.append.by.ref">
|
||||
<refnamediv>
|
||||
<refname>append_by_ref()</refname>
|
||||
<refpurpose>menambah nilai dengan referensi</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>append_by_ref</methodname>
|
||||
<methodparam><type>string</type><parameter>varname</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>var</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>bool</type><parameter>merge</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini digunakan untuk
|
||||
<link linkend="api.append"><varname>append()</varname></link> nilai ke template
|
||||
dengan referensi.
|
||||
Jika anda menambah sebuah variabel dengan referensi lalu mengubah nilainya,
|
||||
nilai yang ditambahkan melihat perubahannya juga. Untuk
|
||||
<link linkend="advanced.features.objects">objects</link>,
|
||||
<varname>append_by_ref()</varname> juga menghindari duplikat obyek yang ditambahkan
|
||||
dalam-memori.
|
||||
Lihat manual PHP pada mereferensi variabel untuk penjelasan lebih dalam. Jika
|
||||
anda mengoper parameter opsional ketiga yakni &true;, nilai akan digabung
|
||||
dengan array daripada ditambahkan.
|
||||
</para>
|
||||
¬e.parameter.merge;
|
||||
<example>
|
||||
<title>append_by_ref</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// menambahkan pasangan nama/nilai
|
||||
$smarty->append_by_ref('Name', $myname);
|
||||
$smarty->append_by_ref('Address', $address);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.append"><varname>append()</varname></link>,
|
||||
<link linkend="api.assign"><varname>assign()</varname></link>
|
||||
dan
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
77
docs/id/programmers/api-functions/api-append.xml
Normal file
77
docs/id/programmers/api-functions/api-append.xml
Normal file
@@ -0,0 +1,77 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.append">
|
||||
<refnamediv>
|
||||
<refname>append()</refname>
|
||||
<refpurpose>menambahkan sebuah element ke array yang ditempatkan</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>append</methodname>
|
||||
<methodparam><type>mixed</type><parameter>var</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>append</methodname>
|
||||
<methodparam><type>string</type><parameter>varname</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>var</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>bool</type><parameter>merge</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Jika anda menambahkan ke nilai string, ia diubah ke nilai array dan kemudian ditambahkannya .
|
||||
Anda bisa mengoper pasangan nama/nilai, atau array asosiatif yang berisi pasangan nama/nilai.
|
||||
Jika anda mengoper parameter opsional ketiga &true;, nilai akan digabung dengan array saat ini
|
||||
daripada ditambahkannya.
|
||||
</para>
|
||||
¬e.parameter.merge;
|
||||
<example>
|
||||
<title>append</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// Ini secara efektif sama seperti assign()
|
||||
$smarty->append('foo', 'Fred');
|
||||
// Setelah baris ini, foo sekarang terlihat sebagai array dalam template
|
||||
$smarty->append('foo', 'Albert');
|
||||
|
||||
$array = array(1 => 'one', 2 => 'two');
|
||||
$smarty->append('X', $array);
|
||||
$array2 = array(3 => 'three', 4 => 'four');
|
||||
// The following line will add a second element to the X array
|
||||
$smarty->append('X', $array2);
|
||||
|
||||
// mengoper sebuah array
|
||||
asosiatif
|
||||
$smarty->append(array('city' => 'Lincoln', 'state' => 'Nebraska'));
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>Lihat juga
|
||||
<link linkend="api.append.by.ref"><varname>append_by_ref()</varname></link>,
|
||||
<link linkend="api.assign"><varname>assign()</varname></link>
|
||||
dan
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
76
docs/id/programmers/api-functions/api-assign-by-ref.xml
Normal file
76
docs/id/programmers/api-functions/api-assign-by-ref.xml
Normal file
@@ -0,0 +1,76 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.assign.by.ref">
|
||||
<refnamediv>
|
||||
<refname>assign_by_ref()</refname>
|
||||
<refpurpose>menempatkan nilai dengan referensi</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>assign_by_ref</methodname>
|
||||
<methodparam><type>string</type><parameter>varname</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>var</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini digunakan untuk <link linkend="api.assign"><varname>assign()</varname></link>
|
||||
nilai ke template denganvreferensi daripada membuat duplikat. Lihat manual PHP
|
||||
pada mereferensi variabel untuk penjelasan.
|
||||
</para>
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Ini digunakan untuk menempatkan nilai ke template dengan referensi.
|
||||
Jika anda menempatkan sebuah variabel dengan referensi maka mengubah
|
||||
nilainya, nilai yang ditempati akan berubah juga. Untuk
|
||||
<link linkend="advanced.features.objects">obyek</link>,
|
||||
<varname>assign_by_ref()</varname> juga menghindari duplikasi obyek yang
|
||||
ditempatkan dalam-memori.
|
||||
Lihat manual PHP pada mereferensi variabel untuk penjelasan lebih dalam.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>assign_by_ref()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// mengoper pasangan nama/nilai
|
||||
$smarty->assign_by_ref('Name', $myname);
|
||||
$smarty->assign_by_ref('Address', $address);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
See also
|
||||
<link linkend="api.assign"><varname>assign()</varname></link>,
|
||||
<link linkend="api.clear.all.assign"><varname>clear_all_assign()</varname></link>,
|
||||
<link linkend="api.append"><varname>append()</varname></link>,
|
||||
<link linkend="language.function.assign"><varname>{assign}</varname></link>
|
||||
and
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
98
docs/id/programmers/api-functions/api-assign.xml
Normal file
98
docs/id/programmers/api-functions/api-assign.xml
Normal file
@@ -0,0 +1,98 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.assign">
|
||||
<refnamediv>
|
||||
<refname>assign()</refname>
|
||||
<refpurpose>menempatkan nilai ke template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>assign</methodname>
|
||||
<methodparam><type>mixed</type><parameter>var</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>assign</methodname>
|
||||
<methodparam><type>string</type><parameter>varname</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>var</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Anda bisa mengoper pasangan nama/nilai secara eksplisit, atau array
|
||||
asosiatif yang berisi pasangan nama/nilai.
|
||||
</para>
|
||||
<example>
|
||||
<title>assign()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// mengoper pasangan nama/nilai
|
||||
$smarty->assign('Name', 'Fred');
|
||||
$smarty->assign('Address', $address);
|
||||
|
||||
// mengurai array asosiatif
|
||||
$smarty->assign(array('city' => 'Lincoln', 'state' => 'Nebraska'));
|
||||
|
||||
// mengurai sebuah array
|
||||
$myArray = array('no' => 10, 'label' => 'Peanuts');
|
||||
$smarty->assign('foo',$myArray);
|
||||
|
||||
// mengurai baris dari database (contoh adodb)
|
||||
$sql = 'select id, name, email from contacts where contact ='.$id;
|
||||
$smarty->assign('contact', $db->getRow($sql));
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Ini diakses dalam template dengan
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{* catatan vars adalah sensitif huruf seperti php *}
|
||||
{$Name}
|
||||
{$Address}
|
||||
{$city}
|
||||
{$state}
|
||||
|
||||
{$foo.no}, {$foo.label}
|
||||
{$contact.id}, {$contact.name},{$contact.email}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Untuk mengakses penempatan array lebih komples lihat
|
||||
<link linkend="language.function.foreach"><varname>{foreach}</varname></link>
|
||||
dan
|
||||
<link linkend="language.function.section"><varname>{section}</varname></link>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.assign.by.ref"><varname>assign_by_ref()</varname></link>,
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>,
|
||||
<link linkend="api.clear.assign"><varname>clear_assign()</varname></link>,
|
||||
<link linkend="api.append"><varname>append()</varname></link>
|
||||
dan
|
||||
<link linkend="language.function.assign"><varname>{assign}</varname></link>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
66
docs/id/programmers/api-functions/api-clear-all-assign.xml
Normal file
66
docs/id/programmers/api-functions/api-clear-all-assign.xml
Normal file
@@ -0,0 +1,66 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.clear.all.assign">
|
||||
<refnamediv>
|
||||
<refname>clear_all_assign()</refname>
|
||||
<refpurpose>membersihkan nilai dari seluruh variabel yang ditempati</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>clear_all_assign</methodname>
|
||||
<void />
|
||||
</methodsynopsis>
|
||||
<example>
|
||||
<title>clear_all_assign()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// mengirimkan pasangan nama/nilai
|
||||
$smarty->assign('Name', 'Fred');
|
||||
$smarty->assign('Address', $address);
|
||||
|
||||
// akan menampilkan yang di atas
|
||||
print_r( $smarty->get_template_vars() );
|
||||
|
||||
// bersihkan seluruh variabel yang ditempati
|
||||
$smarty->clear_all_assign();
|
||||
|
||||
// tidak akan menampilkan apapun
|
||||
print_r( $smarty->get_template_vars() );
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.clear.assign"><varname>clear_assign()</varname></link>,
|
||||
<link linkend="api.clear.config"><varname>clear_config()</varname></link>,
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>,
|
||||
<link linkend="api.assign"><varname>assign()</varname></link>
|
||||
dan <link linkend="api.append"><varname>append()</varname></link>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
60
docs/id/programmers/api-functions/api-clear-all-cache.xml
Normal file
60
docs/id/programmers/api-functions/api-clear-all-cache.xml
Normal file
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.clear.all.cache">
|
||||
<refnamediv>
|
||||
<refname>clear_all_cache()</refname>
|
||||
<refpurpose>membersihkan seluruh cache template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>clear_all_cache</methodname>
|
||||
<methodparam choice="opt"><type>int</type><parameter>expire_time</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Sebagai parameter opsional, anda bisa menyertakan waktu minimum dalam detik file cache
|
||||
seharusnya sebelum dibersihkan.
|
||||
</para>
|
||||
<example>
|
||||
<title>clear_all_cache</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// membersihkan seluruh cache
|
||||
$smarty->clear_all_cache();
|
||||
|
||||
// membersihkan seluruh file yang lebih dari satu jam lamanya
|
||||
$smarty->clear_all_cache(3600);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.clear.cache"><varname>clear_cache()</varname></link>,
|
||||
<link linkend="api.is.cached"><varname>is_cached()</varname></link>
|
||||
dan halaman
|
||||
<link linkend="caching">caching</link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
60
docs/id/programmers/api-functions/api-clear-assign.xml
Normal file
60
docs/id/programmers/api-functions/api-clear-assign.xml
Normal file
@@ -0,0 +1,60 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.clear.assign">
|
||||
<refnamediv>
|
||||
<refname>clear_assign()</refname>
|
||||
<refpurpose>membersihkan nilai dari variabel yang ditempati</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>clear_assign</methodname>
|
||||
<methodparam><type>mixed</type><parameter>var</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini dapat berupa nilai tunggal, atau array nilai.
|
||||
</para>
|
||||
<example>
|
||||
<title>clear_assign()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// membersihkan variabel tunggal
|
||||
$smarty->clear_assign('Name');
|
||||
|
||||
// membersihkan multipel variabel
|
||||
$smarty->clear_assign(array('Name', 'Address', 'Zip'));
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.clear.all.assign"><varname>clear_all_assign()</varname></link>,
|
||||
<link linkend="api.clear.config"><varname>clear_config()</varname></link>,
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>,
|
||||
<link linkend="api.assign"><varname>assign()</varname></link>
|
||||
dan <link linkend="api.append"><varname>append()</varname></link>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
81
docs/id/programmers/api-functions/api-clear-cache.xml
Normal file
81
docs/id/programmers/api-functions/api-clear-cache.xml
Normal file
@@ -0,0 +1,81 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.clear.cache">
|
||||
<refnamediv>
|
||||
<refname>clear_cache()</refname>
|
||||
<refpurpose>membersihkan cache untuk template tertentu</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>clear_cache</methodname>
|
||||
<methodparam><type>string</type><parameter>template</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>cache_id</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>compile_id</parameter>
|
||||
</methodparam>
|
||||
<methodparam choice="opt"><type>int</type><parameter>expire_time</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Jika anda mempunyai <link linkend="caching.multiple.caches">multipel cache</link>
|
||||
untuk sebuah template, anda bisa membersihkan cache tertentu dengan
|
||||
menyertakan <parameter>cache_id</parameter> sebagai parameter kedua.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Anda juga bisa mengirimkan
|
||||
<link linkend="variable.compile.id"><parameter>$compile_id</parameter></link>
|
||||
sebagai parameter ketiga.
|
||||
Anda dapat <link linkend="caching.groups">mengelompokan template bersama</link>
|
||||
agar bisas dihapus sebagai sebuah grup, lihat
|
||||
<link linkend="caching">seksi cache</link> untuk informasi lebih jauh.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Sebagai parameter opsional keempat, anda dapat menyertakan waktu
|
||||
minimum dalam detik cache file seharusnya sebelum dibersihkan.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<example>
|
||||
<title>clear_cache()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// bersihkan cache untuk sebuah template
|
||||
$smarty->clear_cache('index.tpl');
|
||||
|
||||
// bersihkan cache untuk id cache tertentu dalam multipel-cache template
|
||||
$smarty->clear_cache('index.tpl', 'MY_CACHE_ID');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.clear.all.cache"><varname>clear_all_cache()</varname></link>
|
||||
dan seksi
|
||||
<link linkend="caching"><varname>caching</varname></link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
69
docs/id/programmers/api-functions/api-clear-compiled-tpl.xml
Normal file
69
docs/id/programmers/api-functions/api-clear-compiled-tpl.xml
Normal file
@@ -0,0 +1,69 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.clear.compiled.tpl">
|
||||
<refnamediv>
|
||||
<refname>clear_compiled_tpl()</refname>
|
||||
<refpurpose>membersihkan versi terkompilasi dari sumber daya template yang ditetapkan</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>clear_compiled_tpl</methodname>
|
||||
<methodparam choice="opt"><type>string</type><parameter>tpl_file</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>compile_id</parameter>
|
||||
</methodparam>
|
||||
<methodparam choice="opt"><type>int</type><parameter>exp_time</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini membersihkan versi terkompilasi dari sumber daya template yang ditetapkan,
|
||||
atau semua file template yang dikompilasi bila ini tidak ditetapkan.
|
||||
Jika anda mengirimkan
|
||||
<link linkend="variable.compile.id"><parameter>$compile_id</parameter></link>
|
||||
hanya template terkompilasi untuk
|
||||
<link linkend="variable.compile.id"><parameter>$compile_id</parameter></link>
|
||||
spesifik ini yang dibersihkan. Jika anda mengirimkan exp_time, maka hanya
|
||||
template terkompilasi yang lebih lama dari <parameter>exp_time</parameter> detik
|
||||
yang dibersihkan, standarnya template terkompilasi dibersihkan dengan
|
||||
mengabaikan usianya.
|
||||
Fungsi ini hanya untuk penggunaan tingkat lanjut, tidak untuk kebutuhan normal.
|
||||
</para>
|
||||
<example>
|
||||
<title>clear_compiled_tpl()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// bersihkan sumber daya template tertentu
|
||||
$smarty->clear_compiled_tpl('index.tpl');
|
||||
|
||||
// bersihkan seluruh direktori kompilasi
|
||||
$smarty->clear_compiled_tpl();
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>Lihat juga
|
||||
<link linkend="api.clear.cache"><varname>clear_cache()</varname></link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
65
docs/id/programmers/api-functions/api-clear-config.xml
Normal file
65
docs/id/programmers/api-functions/api-clear-config.xml
Normal file
@@ -0,0 +1,65 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.clear.config">
|
||||
<refnamediv>
|
||||
<refname>clear_config()</refname>
|
||||
<refpurpose>membersihkan variabel config yang ditempati</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>clear_config</methodname>
|
||||
<methodparam choice="opt"><type>string</type><parameter>var</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini membersihkan semua
|
||||
<link linkend="language.config.variables">variabel config</link>
|
||||
yang ditempati.
|
||||
Jika nama variabel disertakan, hanya variabel itu yang dibersihkan.
|
||||
</para>
|
||||
<example>
|
||||
<title>clear_config()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// bersihkan semua variabel config yang ditempati.
|
||||
$smarty->clear_config();
|
||||
|
||||
// bersihkan satu variabel
|
||||
$smarty->clear_config('foobar');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.get.config.vars"><varname>get_config_vars()</varname></link>,
|
||||
<link linkend="language.config.variables"><varname>config variables</varname></link>,
|
||||
<link linkend="config.files"><varname>config files</varname></link>,
|
||||
<link linkend="language.function.config.load"><varname>{config_load}</varname></link>,
|
||||
<link linkend="api.config.load"><varname>config_load()</varname></link>
|
||||
dan
|
||||
<link linkend="api.clear.assign"><varname>clear_assign()</varname></link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
82
docs/id/programmers/api-functions/api-config-load.xml
Normal file
82
docs/id/programmers/api-functions/api-config-load.xml
Normal file
@@ -0,0 +1,82 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.config.load">
|
||||
<refnamediv>
|
||||
<refname>config_load()</refname>
|
||||
<refpurpose>mengambil data file config yang menempatinya ke template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>config_load</methodname>
|
||||
<methodparam><type>string</type><parameter>file</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>section</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini mengambil data
|
||||
<link linkend="config.files">file config</link>
|
||||
dan menempatkannya ke template. Pekerjaan ini persis sama dengan fungsi template
|
||||
<link linkend="language.function.config.load">
|
||||
<varname>{config_load}</varname></link>.
|
||||
</para>
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Sejak Smarty 2.4.0, variabel template yang ditempati dipelihara terhadap
|
||||
permintaan
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>
|
||||
dan <link linkend="api.display"><varname>display()</varname></link>.
|
||||
Config vars yang diambil dari
|
||||
<varname>config_load()</varname> selalu dalam lingkup global.
|
||||
File config juga dikompilasi untuk eksekusi lebih cepat, dan
|
||||
memperhatikan setelan
|
||||
<link linkend="variable.force.compile">
|
||||
<parameter>$force_compile</parameter></link> dan
|
||||
<link linkend="variable.compile.check">
|
||||
<parameter>$compile_check</parameter></link>.
|
||||
</para>
|
||||
</note>
|
||||
<example>
|
||||
<title>config_load()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// ambil variabel config dan menempatinya
|
||||
$smarty->config_load('my.conf');
|
||||
|
||||
// ambil seksi
|
||||
$smarty->config_load('my.conf', 'foobar');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.config.load"><varname>{config_load}</varname></link>,
|
||||
<link linkend="api.get.config.vars"><varname>get_config_vars()</varname></link>,
|
||||
<link linkend="api.clear.config"><varname>clear_config()</varname></link>,
|
||||
dan
|
||||
<link linkend="language.config.variables"><varname>variabel config</varname></link>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
114
docs/id/programmers/api-functions/api-display.xml
Normal file
114
docs/id/programmers/api-functions/api-display.xml
Normal file
@@ -0,0 +1,114 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.display">
|
||||
<refnamediv>
|
||||
<refname>display()</refname>
|
||||
<refpurpose>menampilkan template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>display</methodname>
|
||||
<methodparam><type>string</type><parameter>template</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>cache_id</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>compile_id</parameter>
|
||||
</methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini menampilkan template tidak seperti
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>.
|
||||
Sertakan tipe dan path <link
|
||||
linkend="template.resources">sumber daya template</link> yang benar.
|
||||
Sebagai parameter opsional kedua, anda bisa mengirimkan
|
||||
<parameter>$cache id</parameter>, lihat
|
||||
<link linkend="caching">seksi caching</link> untuk informasi lebih jauh.
|
||||
</para>
|
||||
¶meter.compileid;
|
||||
<example>
|
||||
<title>display()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
include(SMARTY_DIR.'Smarty.class.php');
|
||||
$smarty = new Smarty();
|
||||
$smarty->caching = true;
|
||||
|
||||
// hanya melakukan panggilan db jika cache tidak ada
|
||||
if(!$smarty->is_cached('index.tpl')) {
|
||||
|
||||
// buat dummy untuk beberapa data
|
||||
$address = '245 N 50th';
|
||||
$db_data = array(
|
||||
'City' => 'Lincoln',
|
||||
'State' => 'Nebraska',
|
||||
'Zip' => '68502'
|
||||
);
|
||||
|
||||
$smarty->assign('Name', 'Fred');
|
||||
$smarty->assign('Address', $address);
|
||||
$smarty->assign('data', $db_data);
|
||||
|
||||
}
|
||||
|
||||
// tampilkan output
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>Contoh sumber data lain dari display()</title>
|
||||
<para>
|
||||
Gunakan sintaks <link
|
||||
linkend="template.resources">sumber daya template</link> untuk
|
||||
menampilkan file di luar
|
||||
<link linkend="variable.template.dir">
|
||||
<parameter>$template_dir</parameter></link> direktori.
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// path file absolut
|
||||
$smarty->display('/usr/local/include/templates/header.tpl');
|
||||
|
||||
// path file absolut (hal yang sama)
|
||||
$smarty->display('file:/usr/local/include/templates/header.tpl');
|
||||
|
||||
// path file absolut windows (HARUS memakai prefiks "file:")
|
||||
$smarty->display('file:C:/www/pub/templates/header.tpl');
|
||||
|
||||
// sertakan dari sumber daya template bernama "db"
|
||||
$smarty->display('db:header.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga <link linkend="api.fetch"><varname>fetch()</varname></link> dan
|
||||
<link linkend="api.template.exists"><varname>template_exists()</varname></link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
157
docs/id/programmers/api-functions/api-fetch.xml
Normal file
157
docs/id/programmers/api-functions/api-fetch.xml
Normal file
@@ -0,0 +1,157 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.fetch">
|
||||
<refnamediv>
|
||||
<refname>fetch()</refname>
|
||||
<refpurpose>mengembalikan output template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>string</type><methodname>fetch</methodname>
|
||||
<methodparam><type>string</type><parameter>template</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>cache_id</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>$compile_id</parameter>
|
||||
</methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini mengembalikan output template daripada
|
||||
<link linkend="api.display">menampilkan</link> ouput.
|
||||
Sertakan tipe dan path <link
|
||||
linkend="template.resources">sumber daya template</link>
|
||||
yang benar. Sebagai parameter opsional ketiga, anda dapat mengirimkan
|
||||
<parameter>$cache id</parameter>, lihat <link linkend="caching">seksi caching</link>
|
||||
untuk informasi lebih jauh.
|
||||
</para>
|
||||
¶meter.compileid;
|
||||
|
||||
<para>
|
||||
<example>
|
||||
<title>fetch()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
include('Smarty.class.php');
|
||||
$smarty = new Smarty;
|
||||
|
||||
$smarty->caching = true;
|
||||
|
||||
// hanya melakukan panggilan db jika cache tidak ada
|
||||
if(!$smarty->is_cached('index.tpl')) {
|
||||
|
||||
// buat dummy untuk beberapa data
|
||||
$address = '245 N 50th';
|
||||
$db_data = array(
|
||||
'City' => 'Lincoln',
|
||||
'State' => 'Nebraska',
|
||||
'Zip' => '68502'
|
||||
);
|
||||
|
||||
$smarty->assign('Name','Fred');
|
||||
$smarty->assign('Address',$address);
|
||||
$smarty->assign($db_data);
|
||||
|
||||
}
|
||||
|
||||
// tangkap output
|
||||
$output = $smarty->fetch('index.tpl');
|
||||
|
||||
// lakukan sesuatu dengan $output di sini
|
||||
echo $output;
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
<example>
|
||||
<title>Menggunakan fetch() untuk mengirim sebuah email</title>
|
||||
<para>
|
||||
Template <filename>email_body.tpl</filename>
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
Dear {$contact.name},
|
||||
|
||||
Welcome and thankyou for signing up as a member of our user group,
|
||||
|
||||
Click on the link below to login with your user name of '{$contact.login_id}'
|
||||
so you can post in our forums.
|
||||
|
||||
http://{$smarty.server.SERVER_NAME}/login/
|
||||
|
||||
List master
|
||||
Some user group
|
||||
|
||||
{include file='email_disclaimer.tpl'}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Template <filename>email_disclaimer.tpl</filename> yang menggunakan pengubah
|
||||
<link linkend="language.function.textformat">
|
||||
<varname>{textformat}</varname></link>.
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{textformat wrap=40}
|
||||
Kecuali anda menamai "{$contact.name}", anda hanya dapat membaca "kata berurut
|
||||
ganjil" (setiap kata lainnya diawali dengan yang pertama) atas pesan di atas.
|
||||
Jika anda telah melanggarnya, maka anda berhutang ke pengirim 10 GBP untuk
|
||||
setiap kata berurut genap yang sudah anda baca
|
||||
{/textformat}
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Naskah php menggunakan fungsi PHP
|
||||
<ulink url="&url.php-manual;function.mail">
|
||||
<varname>mail()</varname></ulink>
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// dapatkan kontak dari database misalnya memakai pear atau adodb
|
||||
$query = 'select name, email, login_id from contacts where contact_id='.$contact_id;
|
||||
$contact = $db->getRow($sql);
|
||||
$smarty->assign('contact', $contact);
|
||||
|
||||
mail($contact['email'], 'Subject', $smarty->fetch('email_body.tpl'));
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="language.function.fetch"><varname>{fetch}</varname></link>
|
||||
<link linkend="api.display"><varname>display()</varname></link>,
|
||||
<link linkend="language.function.eval"><varname>{eval}</varname></link>,
|
||||
dan
|
||||
<link linkend="api.template.exists"><varname>template_exists()</varname></link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
66
docs/id/programmers/api-functions/api-get-config-vars.xml
Normal file
66
docs/id/programmers/api-functions/api-get-config-vars.xml
Normal file
@@ -0,0 +1,66 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.get.config.vars">
|
||||
<refnamediv>
|
||||
<refname>get_config_vars()</refname>
|
||||
<refpurpose>mengembalikan nilai variabel config yang diambil</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>array</type><methodname>get_config_vars</methodname>
|
||||
<methodparam choice="opt"><type>string</type><parameter>varname</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Jika tidak ada parameter yang diberikan, array dari semua
|
||||
<link linkend="language.config.variables">variabel config</link>
|
||||
array dikembalikan.
|
||||
</para>
|
||||
<example>
|
||||
<title>get_config_vars()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// dapatkan var config template yang diambil #foo#
|
||||
$myVar = $smarty->get_config_vars('foo');
|
||||
|
||||
// dapatkan semua var config template yang diambil
|
||||
$all_config_vars = $smarty->get_config_vars();
|
||||
|
||||
// lihat isinya
|
||||
print_r($all_config_vars);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.clear.config"><varname>clear_config()</varname></link>,
|
||||
<link linkend="language.function.config.load"><varname>{config_load}</varname></link>,
|
||||
<link linkend="api.config.load"><varname>config_load()</varname></link>
|
||||
dan
|
||||
<link linkend="api.get.template.vars"><varname>get_template_vars()</varname></link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,64 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.get.registered.object">
|
||||
<refnamediv>
|
||||
<refname>get_registered_object()</refname>
|
||||
<refpurpose>mengembalikan referensi ke obyek terdaftar</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>array</type><methodname>get_registered_object</methodname>
|
||||
<methodparam><type>string</type><parameter>object_name</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini berguna dari dalam fungsi kustom saat anda memerlukan akses langsung ke
|
||||
<link linkend="api.register.object">obyek terdaftar</link>. Lihat halaman
|
||||
<link linkend="advanced.features.objects">obyek</link> untuk info lebih jauh.
|
||||
</para>
|
||||
<example>
|
||||
<title>get_registered_object()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
function smarty_block_foo($params, &$smarty)
|
||||
{
|
||||
if (isset($params['object'])) {
|
||||
// dapatkan referensi ke obyek terdaftar
|
||||
$obj_ref = &$smarty->get_registered_object($params['object']);
|
||||
// pemakaian $obj_ref sekarang mereferensi ke obyek
|
||||
}
|
||||
}
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.register.object"><varname>register_object()</varname></link>,
|
||||
<link linkend="api.unregister.object"><varname>unregister_object()</varname></link>
|
||||
dan
|
||||
<link linkend="advanced.features.objects">halaman obyek</link>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
67
docs/id/programmers/api-functions/api-get-template-vars.xml
Normal file
67
docs/id/programmers/api-functions/api-get-template-vars.xml
Normal file
@@ -0,0 +1,67 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.get.template.vars">
|
||||
<refnamediv>
|
||||
<refname>get_template_vars()</refname>
|
||||
<refpurpose>mengembalikan nilai variabel yang ditempatkan</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>array</type><methodname>get_template_vars</methodname>
|
||||
<methodparam choice="opt"><type>string</type><parameter>varname</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Jika tidak diberikan parameter, array semua variabel yang
|
||||
is given, an array of all <link linkend="api.assign">ditempati</link>
|
||||
dikembalikan.
|
||||
</para>
|
||||
<example>
|
||||
<title>get_template_vars</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// dapatkan var template 'foo' yang ditempati
|
||||
$myVar = $smarty->get_template_vars('foo');
|
||||
|
||||
// dapatkan semua var template yang ditempati
|
||||
$all_tpl_vars = $smarty->get_template_vars();
|
||||
|
||||
// lihat isinya
|
||||
print_r($all_tpl_vars);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga <link linkend="api.assign"><varname>assign()</varname></link>,
|
||||
<link linkend="language.function.assign"><varname>{assign}</varname></link>,
|
||||
<link linkend="api.append"><varname>append()</varname></link>,
|
||||
<link linkend="api.clear.assign"><varname>clear_assign()</varname></link>,
|
||||
<link linkend="api.clear.all.assign"><varname>clear_all_assign()</varname></link>
|
||||
dan
|
||||
<link linkend="api.get.config.vars"><varname>get_config_vars()</varname></link>
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
133
docs/id/programmers/api-functions/api-is-cached.xml
Normal file
133
docs/id/programmers/api-functions/api-is-cached.xml
Normal file
@@ -0,0 +1,133 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.is.cached">
|
||||
<refnamediv>
|
||||
<refname>is_cached()</refname>
|
||||
<refpurpose>mengembalikan true jika ada cache yang benar untuk template ini</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>bool</type><methodname>is_cached</methodname>
|
||||
<methodparam><type>string</type><parameter>template</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>cache_id</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>string</type><parameter>compile_id</parameter>
|
||||
</methodparam>
|
||||
</methodsynopsis>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
Ini hanya bekerja jika <link linkend="variable.caching">
|
||||
<parameter>$caching</parameter></link> disetel ke &true;, lihat
|
||||
<link linkend="caching">seksi caching</link> untuk info lebih jauh.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Anda juga dapat mengirimkan <parameter>$cache_id</parameter> sebagai parameter
|
||||
opsional kedua seandainya anda menginginkan
|
||||
<link linkend="caching.multiple.caches">multipel cache</link>
|
||||
untuk template yang diberikan.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Anda dapat menyertakan
|
||||
<link linkend="variable.compile.id"><parameter>$compile id</parameter></link>
|
||||
sebagai parameter opsional ketiga. Jika anda mengabaikan parameter itu
|
||||
persisten <link linkend="variable.compile.id">
|
||||
<parameter>$compile_id</parameter></link> dipakai bila disetel.
|
||||
</para></listitem>
|
||||
|
||||
<listitem><para>
|
||||
Jika anda tidak ingin mengirimkan <parameter>$cache_id</parameter> tapi ingin
|
||||
mengirimkan <link linkend="variable.compile.id">
|
||||
<parameter>$compile_id</parameter></link> anda harus mengirimkan
|
||||
&null; sebagai <parameter>$cache_id</parameter>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Jika <varname>is_cached()</varname> menghasilkan &true; ia sebenarnya
|
||||
mengambil output yang di-cache dan menyimpannya secara internal.
|
||||
Setiap panggilan berikutnya ke
|
||||
<link linkend="api.display"><varname>display()</varname></link> atau
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>
|
||||
akan mengembalikan ouput ini yang secara internal disimpan dan tidak
|
||||
mencoba mengambil ulang file cache. Ini menghindari kondisi lomba yang
|
||||
mungkin terjadi saat proses kedua membersihkan cache diantara panggilan
|
||||
ke <varname>is_cached()</varname> dan ke
|
||||
<link linkend="api.display"><varname>display()</varname></link>
|
||||
dalam contoh di atas. Ini juga berarti panggilan ke
|
||||
<link linkend="api.clear.cache"><varname>clear_cache()</varname></link>
|
||||
dan perubahan lain dari setelan-cache mungkin tidak berpengaruh setelah
|
||||
<varname>is_cached()</varname> mengembalikan &true;.
|
||||
</para>
|
||||
</note>
|
||||
|
||||
<example>
|
||||
<title>is_cached()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->caching = true;
|
||||
|
||||
if(!$smarty->is_cached('index.tpl')) {
|
||||
// lakukan panggilan database, tempatkan vars di sini
|
||||
}
|
||||
|
||||
$smarty->display('index.tpl');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<example>
|
||||
<title>is_cached() with multiple-cache template</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->caching = true;
|
||||
|
||||
if(!$smarty->is_cached('index.tpl', 'FrontPage')) {
|
||||
// lakukan panggilan database, tempatkan vars di sini
|
||||
}
|
||||
|
||||
$smarty->display('index.tpl', 'FrontPage');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.clear.cache"><varname>clear_cache()</varname></link>,
|
||||
<link linkend="api.clear.all.cache"><varname>clear_all_cache()</varname></link>,
|
||||
and
|
||||
<link linkend="caching">seksi caching</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
70
docs/id/programmers/api-functions/api-load-filter.xml
Normal file
70
docs/id/programmers/api-functions/api-load-filter.xml
Normal file
@@ -0,0 +1,70 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.load.filter">
|
||||
<refnamediv>
|
||||
<refname>load_filter()</refname>
|
||||
<refpurpose>mengambil plugin filter</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>load_filter</methodname>
|
||||
<methodparam><type>string</type><parameter>type</parameter></methodparam>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Argumen pertama menetapkan tipe filter yang diambil dan bisa salah satu dari
|
||||
yang berikut ini: <literal>pre</literal>, <literal>post</literal> atau
|
||||
<literal>output</literal>.
|
||||
Argumen kedua menetapkan <parameter>nama</parameter> plugin filter.
|
||||
</para>
|
||||
<example>
|
||||
<title>Mengambil plugin filter</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// ambil prefilter bernama 'trim'
|
||||
$smarty->load_filter('pre', 'trim');
|
||||
|
||||
// ambil prefilter lain bernama 'datefooter'
|
||||
$smarty->load_filter('pre', 'datefooter');
|
||||
|
||||
// ambil filter output bernama 'compress'
|
||||
$smarty->load_filter('output', 'compress');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.register.prefilter"><varname>register_prefilter()</varname></link>,
|
||||
<link linkend="api.register.postfilter"><varname>register_postfilter()</varname></link>,
|
||||
<link linkend="api.register.outputfilter"><varname>register_outputfilter()</varname></link>,
|
||||
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>
|
||||
dan
|
||||
<link linkend="advanced.features">advanced features</link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
91
docs/id/programmers/api-functions/api-register-block.xml
Normal file
91
docs/id/programmers/api-functions/api-register-block.xml
Normal file
@@ -0,0 +1,91 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.block">
|
||||
<refnamediv>
|
||||
<refname>register_block()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi plugins fungsi blok</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_block</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>impl</parameter></methodparam>
|
||||
<methodparam><type>bool</type><parameter>cacheable</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>cache_attrs</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
|
||||
<para>
|
||||
Gunakan ini untuk meregistrasi
|
||||
<link linkend="plugins.block.functions">plugin fungsi blok</link> secara
|
||||
dinamis.
|
||||
Mengirimkan <parameter>name</parameter> fungsi blok, diikuti oleh nama fungsi
|
||||
PHP yang mengimplementasikannya.
|
||||
</para>
|
||||
&api.register.snippet;
|
||||
|
||||
<para>
|
||||
<parameter>cacheable</parameter> dan <parameter>cache_attrs</parameter>
|
||||
dapat diabaikan. Lihat seksi <link
|
||||
linkend="caching.cacheable">mengontrol output plugin yang dapat di-cache</link>
|
||||
atas bagaimana untuk mengimplementasikannya dengan benar.
|
||||
</para>
|
||||
<example>
|
||||
<title>register_block()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
// deklararsi fungsi
|
||||
function do_translation ($params, $content, &$smarty, &$repeat)
|
||||
{
|
||||
if (isset($content)) {
|
||||
$lang = $params['lang'];
|
||||
// lakukan beberapa terjemahan dengan $content
|
||||
return $translation;
|
||||
}
|
||||
}
|
||||
|
||||
// registrasi dengan smarty
|
||||
$smarty->register_block('translate', 'do_translation');
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Di mana template adalah:
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{translate lang='br'}Hello, world!{/translate}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.block"><varname>unregister_block()</varname></link>
|
||||
dan halaman
|
||||
<link linkend="plugins.block.functions">fungsi blok plugin</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,58 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.compiler.function">
|
||||
<refnamediv>
|
||||
<refname>register_compiler_function()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi plugins fungsi kompilator</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>bool</type><methodname>register_compiler_function</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>impl</parameter></methodparam>
|
||||
<methodparam><type>bool</type><parameter>cacheable</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Mengirimkan nama
|
||||
<link linkend="plugins.compiler.functions">fungsi kompilator</link>,
|
||||
diikuti oleh fungsi PHP yang mengimplementasikannya.
|
||||
</para>
|
||||
&api.register.snippet;
|
||||
|
||||
<para>
|
||||
<parameter>cacheable</parameter> dapat diabaikan. Lihat
|
||||
<link linkend="caching.cacheable">mengontrol output plugin
|
||||
yang dapat di-cache</link> atas bagaimana untuk menggunakannya dengan benar.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.compiler.function">
|
||||
<varname>unregister_compiler_function()</varname></link>
|
||||
dan seksi
|
||||
<link linkend="plugins.compiler.functions">fungsi kompilator plugin</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
92
docs/id/programmers/api-functions/api-register-function.xml
Normal file
92
docs/id/programmers/api-functions/api-register-function.xml
Normal file
@@ -0,0 +1,92 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.function">
|
||||
<refnamediv>
|
||||
<refname>register_function()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi plugin fungsi template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_function</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>impl</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>bool</type><parameter>cacheable</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>mixed</type><parameter>cache_attrs</parameter>
|
||||
</methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Mengirimkan nama <link linkend="plugins.functions">fungsi template</link>,
|
||||
diikuti oleh nama fungsi PHP yang mengimplementasikannya.
|
||||
</para>
|
||||
&api.register.snippet;
|
||||
|
||||
|
||||
<para>
|
||||
<parameter>cacheable</parameter> dan <parameter>cache_attrs</parameter> dapat
|
||||
diabaikan. Lihat <link
|
||||
linkend="caching.cacheable">mengontrol output plugin yang dapat di-cache</link>
|
||||
atas bagaimana menggunakannya dengan benar.
|
||||
</para>
|
||||
<example>
|
||||
<title>register_function()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->register_function('date_now', 'print_current_date');
|
||||
|
||||
function print_current_date($params, &$smarty)
|
||||
{
|
||||
if(empty($params['format'])) {
|
||||
$format = "%b %e, %Y";
|
||||
} else {
|
||||
$format = $params['format'];
|
||||
}
|
||||
return strftime($format,time());
|
||||
}
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Dan dalam template
|
||||
</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
{date_now}
|
||||
|
||||
{* atau untuk membentuk secara berbeda *}
|
||||
{date_now format="%Y/%m/%d"}
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.function"><varname>unregister_function()</varname></link>
|
||||
dan seksi
|
||||
<link linkend="plugins.functions">fungsi plugin</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
74
docs/id/programmers/api-functions/api-register-modifier.xml
Normal file
74
docs/id/programmers/api-functions/api-register-modifier.xml
Normal file
@@ -0,0 +1,74 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.modifier">
|
||||
<refnamediv>
|
||||
<refname>register_modifier()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi plugin pengubah</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_modifier</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
<methodparam><type>mixed</type><parameter>impl</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Mengirimkan nama pengubah template, diikuti oleh fungsi PHP yang
|
||||
mengimplementasikannya.
|
||||
</para>
|
||||
&api.register.snippet;
|
||||
|
||||
|
||||
<example>
|
||||
<title>register_modifier()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// mari peta-kan fungsi PHP stripslashes ke pengubah Smarty.
|
||||
$smarty->register_modifier('ss', 'stripslashes');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>Dalam template, pakai <literal>ss</literal> untuk membuang garis miring.</para>
|
||||
<programlisting>
|
||||
<![CDATA[
|
||||
<?php
|
||||
{$var|ss}
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.modifier"><varname>unregister_modifier()</varname></link>,
|
||||
<link linkend="api.register.function"><varname>register_function()</varname></link>,
|
||||
seksi <link linkend="language.modifiers">pengubah</link>,
|
||||
<link linkend="plugins">memperluas Smarty dengan plugins</link>
|
||||
dan
|
||||
<link linkend="plugins.modifiers">membuat pengubah plugin</link>,
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
53
docs/id/programmers/api-functions/api-register-object.xml
Normal file
53
docs/id/programmers/api-functions/api-register-object.xml
Normal file
@@ -0,0 +1,53 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.object">
|
||||
<refnamediv>
|
||||
<refname>register_object()</refname>
|
||||
<refpurpose>meregistrasi obyek untuk digunakan dalam template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_object</methodname>
|
||||
<methodparam><type>string</type><parameter>object_name</parameter></methodparam>
|
||||
<methodparam><type>object</type><parameter>object</parameter></methodparam>
|
||||
<methodparam><type>array</type><parameter>allowed_methods_properties</parameter>
|
||||
</methodparam>
|
||||
<methodparam><type>boolean</type><parameter>format</parameter></methodparam>
|
||||
<methodparam><type>array</type><parameter>block_methods</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Lihat
|
||||
<link linkend="advanced.features.objects">seksi obyek</link>
|
||||
untuk informasi lebih jauh.
|
||||
</para>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.get.registered.object"><varname>get_registered_object()</varname></link>,
|
||||
dan
|
||||
<link linkend="api.unregister.object"><varname>unregister_object()</varname></link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
||||
|
@@ -0,0 +1,55 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.outputfilter">
|
||||
<refnamediv>
|
||||
<refname>register_outputfilter()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi outputfilters</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsin</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_outputfilter</methodname>
|
||||
<methodparam><type>mixed</type><parameter>function</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Gunakan ini untuk meregistrasi
|
||||
<link linkend="plugins.outputfilters">outputfilters</link> secara dinamis
|
||||
guna beroperasi pada output template sebelum ia
|
||||
<link linkend="api.display">ditampilkan</link>. Lihat
|
||||
<link linkend="advanced.features.outputfilters">filter output
|
||||
template</link>
|
||||
untuk informasi lebih jauh atas bagaimana menyiapkan fungsi filter output.
|
||||
</para>
|
||||
&api.register.snippet;
|
||||
¬e.parameter.function;
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.outputfilter"><varname>unregister_outputfilter()</varname></link>,
|
||||
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>,
|
||||
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>
|
||||
dan seksi
|
||||
<link linkend="advanced.features.outputfilters">filter output template</link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.postfilter">
|
||||
<refnamediv>
|
||||
<refname>register_postfilter()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi postfilters</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_postfilter</methodname>
|
||||
<methodparam><type>mixed</type><parameter>function</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Gunakan ini untuk meregistrasi
|
||||
<link linkend="advanced.features.postfilters">postfilters</link> secara
|
||||
dinamis guna menjalankan template setelah ia dikompilasi. Lihat <link
|
||||
linkend="advanced.features.postfilters">template postfilters</link> untuk
|
||||
informasi lebih jauh atas bagaimana menyiapkan postfilter fungsi.
|
||||
</para>
|
||||
&api.register.snippet;
|
||||
¬e.parameter.function;
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.postfilter">
|
||||
<varname>unregister_postfilter()</varname></link>,
|
||||
<link linkend="api.register.prefilter">
|
||||
<varname>register_prefilter()</varname></link>,
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>,
|
||||
<link linkend="variable.autoload.filters">
|
||||
<parameter>$autoload_filters</parameter></link>
|
||||
dan seksi
|
||||
<link linkend="advanced.features.outputfilters">template output filters</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
57
docs/id/programmers/api-functions/api-register-prefilter.xml
Normal file
57
docs/id/programmers/api-functions/api-register-prefilter.xml
Normal file
@@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.prefilter">
|
||||
<refnamediv>
|
||||
<refname>register_prefilter()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi prefilters</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_prefilter</methodname>
|
||||
<methodparam><type>mixed</type><parameter>function</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Gunakan ini untuk meregistrasi
|
||||
<link linkend="advanced.features.prefilters">prefilters</link> secara
|
||||
dinamis guna menjalankan template sebelum ia dikompilas. Lihat <link
|
||||
linkend="advanced.features.prefilters">template prefilters</link>
|
||||
untuk informasi lebih jauh atas bagaimana menyiapkan prefilter fungsi.
|
||||
</para>
|
||||
&api.register.snippet;
|
||||
¬e.parameter.function;
|
||||
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.prefilter"><varname>unregister_prefilter()</varname></link>,
|
||||
<link linkend="api.register.postfilter"><varname>register_postfilter()</varname></link>,
|
||||
<link linkend="api.register.outputfilter"><varname>register_ouputfilter()</varname></link>,
|
||||
<link linkend="api.load.filter"><varname>load_filter()</varname></link>,
|
||||
<link linkend="variable.autoload.filters"><parameter>$autoload_filters</parameter></link>
|
||||
dan seksi
|
||||
<link linkend="advanced.features.outputfilters">template output filters</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
98
docs/id/programmers/api-functions/api-register-resource.xml
Normal file
98
docs/id/programmers/api-functions/api-register-resource.xml
Normal file
@@ -0,0 +1,98 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.register.resource">
|
||||
<refnamediv>
|
||||
<refname>register_resource()</refname>
|
||||
<refpurpose>secara dinamis meregistrasi sumberdaya</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>register_resource</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
<methodparam><type>array</type><parameter>resource_funcs</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Gunakan ini untuk meregistrasi
|
||||
<link linkend="template.resources">plugin sumber daya</link> secara
|
||||
dinamis dengan Smarty.
|
||||
Mengirimkan <parameter>name</parameter> sumber daya dab fungsi array PHP
|
||||
yang mengimplementasikannya. Lihat
|
||||
<link linkend="template.resources">sumber daya template</link>
|
||||
untuk informasi lebih jauh atas bagaimana menyiapkan fungsi untuk mengambil
|
||||
templates.
|
||||
<note>
|
||||
<title>Catatan Teknis</title>
|
||||
<para>
|
||||
Panjang nama sumber daya harus berisi setidaknya 2 karakter. Satu karakter
|
||||
nama sumber daya akan diabaikan dan dipakai sebagai bagian dari path file,
|
||||
misalnya <literal>$smarty->display('c:/path/to/index.tpl');</literal>
|
||||
</para>
|
||||
</note>
|
||||
|
||||
</para>
|
||||
|
||||
<itemizedlist>
|
||||
<listitem><para>
|
||||
array-fungsi-php <parameter>resource_funcs</parameter>
|
||||
harus mempunyai 4 atau 5 elemen.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Dengan 4 elemen, elemen adalah callback-fungsi untuk fungsi <literal>source</literal>
|
||||
masing-masing,
|
||||
<literal>timestamp</literal>, <literal>secure</literal> dan
|
||||
<literal>trusted</literal> dari sumber daya.
|
||||
</para></listitem>
|
||||
<listitem><para>
|
||||
Dengan 5 elemen, elemen pertama harus berupa referensi obyek atau nama kelas
|
||||
obyek atau kelas yang mengimplementasikan sumber daya dan 4 elemen berikut
|
||||
harus berupa nama metode yang mengimplementasikan <literal>source</literal>,
|
||||
<literal>timestamp</literal>, <literal>secure</literal>
|
||||
dan <literal>trusted</literal>.
|
||||
</para></listitem>
|
||||
</itemizedlist>
|
||||
<example>
|
||||
<title>register_resource()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
$smarty->register_resource('db', array(
|
||||
'db_get_template',
|
||||
'db_get_timestamp',
|
||||
'db_get_secure',
|
||||
'db_get_trusted')
|
||||
);
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.unregister.resource"><varname>unregister_resource()</varname></link>
|
||||
dan seksi
|
||||
<link linkend="template.resources">sumber daya template</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
92
docs/id/programmers/api-functions/api-template-exists.xml
Normal file
92
docs/id/programmers/api-functions/api-template-exists.xml
Normal file
@@ -0,0 +1,92 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.template.exists">
|
||||
<refnamediv>
|
||||
<refname>template_exists()</refname>
|
||||
<refpurpose>memeiksa apakah template yang ditetapkan sudah ada</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>bool</type><methodname>template_exists</methodname>
|
||||
<methodparam><type>string</type><parameter>template</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Ini dapat menerima baik path ke template pada sistem file ataupun string
|
||||
sumber daya yang menetapkan template.
|
||||
</para>
|
||||
|
||||
<example>
|
||||
<title>template_exists()</title>
|
||||
<para>
|
||||
Contoh ini menggunakan <literal>$_GET['page']</literal> untuk
|
||||
<link linkend="language.function.include"><varname>{include}</varname></link>
|
||||
konten template. Jika template tidak ada maka halaman kesalahan yang
|
||||
ditampilkan. Pertama <filename>page_container.tpl</filename>
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<html>
|
||||
<head><title>{$title}</title></head>
|
||||
<body>
|
||||
{include file='page_top.tpl'}
|
||||
|
||||
{* sertakan halaman konten tengah *}
|
||||
{include file=$content_template}
|
||||
|
||||
{include file='page_footer.tpl'}
|
||||
</body>
|
||||
]]>
|
||||
</programlisting>
|
||||
<para>
|
||||
Dan naskah php
|
||||
</para>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// set nama file, contoh index.inc.tpl
|
||||
$mid_template = $_GET['page'].'.inc.tpl';
|
||||
|
||||
if( !$smarty->template_exists($mid_template) ){
|
||||
$mid_template = 'page_not_found.tpl';
|
||||
}
|
||||
$smarty->assign('content_template', $mid_template);
|
||||
|
||||
$smarty->display('page_container.tpl');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.display"><varname>display()</varname></link>,
|
||||
<link linkend="api.fetch"><varname>fetch()</varname></link>,
|
||||
<link linkend="language.function.include"><varname>{include}</varname></link>
|
||||
and
|
||||
<link linkend="language.function.insert"><varname>{insert}</varname></link>
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
52
docs/id/programmers/api-functions/api-trigger-error.xml
Normal file
52
docs/id/programmers/api-functions/api-trigger-error.xml
Normal file
@@ -0,0 +1,52 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.trigger.error">
|
||||
<refnamediv>
|
||||
<refname>trigger_error()</refname>
|
||||
<refpurpose>menampilkan pesan kesalahan</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>trigger_error</methodname>
|
||||
<methodparam><type>string</type><parameter>error_msg</parameter></methodparam>
|
||||
<methodparam choice="opt"><type>int</type><parameter>level</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Fungsi ini dapat dipakai untuk menampilkan pesan kesalahan menggunakan Smarty.
|
||||
Parameter <parameter>level</parameter> bisa salah satu dari nilai yang dipakai
|
||||
fungsi PHP <ulink url="&url.php-manual;trigger_error">
|
||||
<varname>trigger_error()</varname></ulink>, contoh:
|
||||
<literal>E_USER_NOTICE</literal>, <literal>E_USER_WARNING</literal>, dll.
|
||||
Standarnya adalah <literal>E_USER_WARNING</literal>.
|
||||
</para>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="variable.error.reporting">
|
||||
<parameter>$error_reporting</parameter></link>,
|
||||
<link linkend="chapter.debugging.console">debugging</link>
|
||||
dan
|
||||
<link linkend="smarty.php.errors">pemecahan masalah</link>.
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
49
docs/id/programmers/api-functions/api-unregister-block.xml
Normal file
49
docs/id/programmers/api-functions/api-unregister-block.xml
Normal file
@@ -0,0 +1,49 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.unregister.block">
|
||||
<refnamediv>
|
||||
<refname>unregister_block()</refname>
|
||||
<refpurpose>secara dinamis membatalkan registrasi plugin fungsi blok</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>unregister_block</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Gunakan ini untuk membatalkan registrasi
|
||||
<link linkend="plugins.block.functions">plugin fungsi blok</link> secara
|
||||
dinamis.
|
||||
Mengirimkan fungsi blok <parameter>name</parameter>.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.register.block"><varname>register_block()</varname></link>
|
||||
dan
|
||||
<link linkend="plugins.block.functions">plugins fungsi blok</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,47 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.unregister.compiler.function">
|
||||
<refnamediv>
|
||||
<refname>unregister_compiler_function()</refname>
|
||||
<refpurpose>secara dinamis membatalkan registrasi fungsi kompilator</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>unregister_compiler_function</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Mengirimkan <parameter>name</parameter> fungsi kompilator.
|
||||
</para>
|
||||
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.register.compiler.function">
|
||||
<varname>register_compiler_function()</varname></link>
|
||||
dan
|
||||
<link linkend="plugins.compiler.functions">fungsi kompilator plugin</link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.unregister.function">
|
||||
<refnamediv>
|
||||
<refname>unregister_function</refname>
|
||||
<refpurpose>secara dinamis membatalkan registrasi plugin fungsi template</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>unregister_function</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Mengirimkan fungsi template <parameter>name</parameter>.
|
||||
</para>
|
||||
<example>
|
||||
<title>unregister_function</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// kita tidak menginginkan desainer template harus mengakses file sistem
|
||||
$smarty->unregister_function('fetch');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
|
||||
<para>
|
||||
Lihat juga <link linkend="api.register.function">
|
||||
<varname>register_function()</varname></link>.
|
||||
</para>
|
||||
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
@@ -0,0 +1,57 @@
|
||||
<?xml version="1.0" encoding="iso-8859-1"?>
|
||||
<!-- $Revision$ -->
|
||||
<refentry id="api.unregister.modifier">
|
||||
<refnamediv>
|
||||
<refname>unregister_modifier()</refname>
|
||||
<refpurpose>secara dinamis membatalkan registrasi plugin pengubah</refpurpose>
|
||||
</refnamediv>
|
||||
<refsect1>
|
||||
<title>Deskripsi</title>
|
||||
<methodsynopsis>
|
||||
<type>void</type><methodname>unregister_modifier</methodname>
|
||||
<methodparam><type>string</type><parameter>name</parameter></methodparam>
|
||||
</methodsynopsis>
|
||||
<para>
|
||||
Mengirimkan pengubah template <parameter>name</parameter>.
|
||||
</para>
|
||||
<example>
|
||||
<title>unregister_modifier()</title>
|
||||
<programlisting role="php">
|
||||
<![CDATA[
|
||||
<?php
|
||||
|
||||
// kita tidak menginginkan desainer template untuk membuang taag dari elemen
|
||||
$smarty->unregister_modifier('strip_tags');
|
||||
|
||||
?>
|
||||
]]>
|
||||
</programlisting>
|
||||
</example>
|
||||
<para>
|
||||
Lihat juga
|
||||
<link linkend="api.register.modifier"><varname>register_modifier()</varname></link>
|
||||
dan
|
||||
<link linkend="plugins.modifiers">pengubah plugin</link>,
|
||||
</para>
|
||||
</refsect1>
|
||||
</refentry>
|
||||
<!-- Keep this comment at the end of the file
|
||||
Local variables:
|
||||
mode: sgml
|
||||
sgml-omittag:t
|
||||
sgml-shorttag:t
|
||||
sgml-minimize-attributes:nil
|
||||
sgml-always-quote-attributes:t
|
||||
sgml-indent-step:1
|
||||
sgml-indent-data:t
|
||||
indent-tabs-mode:nil
|
||||
sgml-parent-document:nil
|
||||
sgml-default-dtd-file:"../../../../manual.ced"
|
||||
sgml-exposed-tags:nil
|
||||
sgml-local-catalogs:nil
|
||||
sgml-local-ecat-files:nil
|
||||
End:
|
||||
vim600: syn=xml fen fdm=syntax fdl=2 si
|
||||
vim: et tw=78 syn=sgml
|
||||
vi: ts=1 sw=1
|
||||
-->
|
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user