របៀបប្រើ Foreach loop ក្នុង Smarty

អត្ថបទនេះ Techfree នឹងបង្រៀនលោកអ្នកអំពីកាប្រើប្រាស់ foreach Loop នៅក្នុង Smarty មុខងារបស់ foreach គឺភាគច្រើនប្រើវាក្នុង Array ឬ Collection ផ្សេងៗ រឺក៏ object ឬ class ដែរ ហើយភាគច្រើនបំផុតគេប្រើជាមួយ Array។

នេះជារូបមន្ត: {foreach $varaible as array}

  1. ឧទាហរណ៍ ទៅលើការប្រើប្រាស់ {foreach}  loop
  • បង្កើត PHP File : New File > index.php សរសេកូដដូចខាងក្រោម

code_foreach_loop_smarty

នៅលើបន្ទាត់ទី 7 បង្កើត Array ដែលមាន ៧ធាតុ

នៅលើបន្ទាត់ទី 8 ធ្វើការបញ្ចូន Array ទៅកាន់ Template

  • បង្កើត File smarty: New File > index.tpl រួចធ្វើកាសរសេរកូដដូចខាងក្រោម

code_foreach_loop2

នៅលើបន្ទាត់ទី 17 យើងធ្វើកា បង្វិល Array ដែលយើងបង្កើតនៅក្នុង PHP File ខាងលើចេញមក្រៅ។

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

result_foreach_loop1

2. ការប្រើប្រាស់បន្ថែមនៃ Key variable  ក្នុង foreach loop

កាបង្កើត Array ជាមូយ Key វាមានលក្ខណះខុសពីការបង្កើត Array ខាងលើ ហើយក្នុងចំនុចនេះ គឺ ផ្តោតទៅលើ Key និង Value។ ខាងក្រោម Techfree នឹងធ្វើកាបង្កើត Array មកបង្ហាញលោកអ្នកដូចតទៅ។

  • លោកអ្នកធ្វើការបង្កើត PHP File: New File >additional_key.php សរសេរកូដដូចខាងក្រោម៖

foreach_loop-example2

fname, lname, doe ទាំងអស់នេះវាជា Key

  • លោកអ្នកធ្វើការបង្កើត Smarty File :>New additional_key.tpl សរសេរកូដដូចខាងក្រោម៖

smarty_foreach_loop-example2

នៅលើបន្ទាត់ទី 18 គឺធ្វើកាបង្ហាញ Key ហើយនឹង Value នៃ Array។

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

result_loop_with-key_smarty

     3. កាប្រើ Foreach ជាមួយ nested  item ហើយនឹង key

ការបញ្ចូន Array ទៅកាន់ Smarty , មាន Key  សំរាប់ធ្វើការ Looped ទិន្នន័យ។

Techfree នឹងធ្វើការបង្កើត array លក្ខណះជា Nested item រួចបញ្ជូនទៅកាន់ Template ហើយ នឹងធ្វើការបង្ហាញទិន្នន័យ។

  • លោកអ្នកធ្វើការបង្កើត PHP File : New File > nested.php រួចធ្វើកាសរសេរកូដដូចខាងក្រោម៖

php_file_nested_item

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

php_file_nested_item2

នៅក្នុងចំនុចការបង្វិល Loop មានលក្ខណះខុសពីខាងលើ ព្រោះ Loop ធ្វើការបង្វិល ២ តង់

– តង់ ទី ១ វានឹងបង្ហាញលក្ខណះ Array 2 វិមាត្រ  ដែលជាទម្រង់ Row នឹង Column។

nested_loop1

-loop តង់ទីពីរ គឺធ្វើការបង្វិលចាប់យក key នឹង Values នៃ Array មកបង្ហាញមកក្រៅ។

nested_loop2