ការប្រើ Custom Function ក្នុង Smarty

អត្ថបទនេះ Techfree នឹងធ្វើការលើកយកការប្រើ Custom Function ក្នុង Smarty ។ Smarty បានភ្ជាប់ជាមួយ Custom plugin function ជាច្រើនដែលអ្នកអាចប្រើនៅក្នុង Template ហើយការបង្កើត Custom function ក្នុងSmarty គឺមានដូចនៅក្នុងតារាង ហើយ Techfree នឹងធ្វើការលើកយក Custom function មួយចំនួនមកបង្ហាញលោកអ្នកដូចខាងក្រោម៖

table_of_content

1- ឧទាហរណ៍៖ ការប្រើជា {Counter} គឺប្រើសំរាប់បង្ហាញចំនួនដែលបានរាប់។ {counter}នឹង ចងចាំតំលៃរាប់ឡើងវិញ ហើយលោកអ្នកក៏អាចលៃចំនួននេះបានដែរ។ ខាងក្រោមនេះ Techfree នឹងធ្វើការលើកយក function count មកបង្ហាញលោកអ្នក ដូចខាងក្រោម៖

១) ធ្វើការបង្កើត PHP File : New File >count.php សរសេរកូដដូចខាងក្រោម៖

php_file_counter

២) ធ្វើការបង្កើត Smarty File : New File >count.tpl សរសេរកូដដូចខាងក្រោម៖

smarty_file_counter

នៅលើបន្ទាត់ទី 15 ៖ start = 0 គឺធ្វើការរាប់ចាំពីលេខ 0ហើយ Skip = 3 រំលងចន្លោះនៃការរាប់ ពី០នឹង ៣ គឺ 1, 2

  • លទ្ធផលនឹងបង្ហាញដូចខាងក្រោម៖

result_counter

 

2-ឧទាហរណ៍៖ កាប្រើជាមួយ {cycle} គឺដែលបានប្រើជំនួសការផ្តល់តំលៃហើយវាមានភាពងាយស្រួលក្នុងការជំនួសចន្លោះ ពីរ ឬ ច្រើន ពណ៌ដូចក្នុង Table ឬ ក៏តាមរយៈតំលៃនៃ Array។ ខាងក្រោម Techfree នឹងធ្វើការបង្កើត Table ដែលមានពណ៌ Row ដែលមានផ្សេងៗគ្នាដូចខាងក្រោម៖

2.1) ធ្វើការបង្កើត PHP File : New File >cylcle.php សរសេរកូដដូចខាងក្រោម៖

cycle_function

2.2) ធ្វើការបង្កើត Smarty File : New File >count.tpl សរសេរកូដដូចខាងក្រោម៖

cycle_function2

cycle_function3នៅលើបន្ទាត់ទី 21 គឹយើងប្រើ {Cycle} ធ្វើការកំនត់ទៅលើ ពណ៌ Row។

  • កូដខាងលើនឹងបង្ហាញលទ្ធផលដូចខាងក្រោម៖

result_use_cycle

3-ឧទាហរណ៍៖ ការប្រើប្រាស់ {eval} គឺជាការកំនត់តំលៃទៅលើ Variable នៅលើ Template។ នេះត្រូវបានប្រើសំរាប់កំណត់អ្វីដែល ជាកាបង្កប់ Template tag Variable  ឬក៏ tag/Variable ទៅក្នុង Config file variable។

ឧទាហរណ៍៖ ការប្រើ {eval} ជាមួយ Config file

3.1) ធ្វើការបង្កើត Config File : New File >setup.conf សរសេរកូដដូចខាងក្រោម៖

eval_config

3.2) ធ្វើការបង្កើត PHP  File : New File >eval.php សរសេរកូដដូចខាងក្រោម៖

eval_php_file

3.3) ធ្វើការបង្កើត smarty  File : New File >eval.tpl សរសេរកូដដូចខាងក្រោម៖

eval_smarty_file

នៅលើបន្ទាត់ទី 15 យើងធ្វើការ ហៅ setup.conf ដែលនៅខាងក្រៅមកប្រើ។ ចំណែកឯ {eval var=#title#} យើងធ្វើការហៅតំលៃចេញ ពី config file ខាងលើដែលយើងបានប្រកាសខាងលើ។

នៅលើបន្ទាត់ទី20 គឺយើងធ្វើការបញ្ចូនតំលៃបន្ត ទៅអោយអញ្ញាត់មួយ ឈ្មោះថា state_error។

  • កូដខាងលើនឹងបង្ហាញតម្លៃដូចខាងក្រោម៖

result_eval_smarty