ស្វែងយល់អំពី ClassLoader Component នៅក្នុង Symfony3

ដើម្បីធ្វើការ load class និងចាប់យកនូវទីតាំងរបស់ពួកគេដើម្បីធ្វើដំណើរការបាន តើអ្នកចាំបាច់ត្រូវប្រើអ្វីទៅ? នៅក្នុង Symfony មាន component មួយដែលផ្ដល់នូវ tools ដើម្បី load classes និងចាប់យកទីតាំងរបស់ classes សម្រាប់ដំណើរការដោយស្វ័យប្រវត្តិ ហើយវាមានឈ្មោះថា ClassLoader។ នៅក្នុងចំណុចនេះ យើងខ្ញុំនឹងនាំលោកអ្នកអោយជ្រាបនូវការប្រើប្រាស់និងការតម្លើង ClassLoader Component មួយនេះ៖

១) ការប្រើប្រាស់

នៅពេលណាដែរអ្នកព្រាងរឺក៏យោង​(reference class) ដែលមិនទាន់បានទាមទាររឺក៏បញ្ចូលនៅឡើយនោះគឺ PHP ប្រើនូវ autoloading mechanism ដើម្បីធ្វើការតំណាងក្នុងការ load នៃ file ដែលធ្វើការកំណត់នូវ class។ Symfony ផ្ដល់នូវ autoloaders ចំនួន៣ ដែលជាអ្នកមានសិទ្ធធ្វើការ load នូវ classes របស់អ្នក៖

បន្ថែមពីនេះ Symfony ClassLoader component ភ្ជាប់មកជាមួយនូវ wrapper class ដែលធ្វើអោយវាអាចទៅរួចក្នុងការចាប់យកលទ្ធផលនៃ class loader

ពេលដែលប្រើប្រាស់ Debug component អ្នកក៏អាចប្រើនូវ DebugClassLoader ពិសេសមួយដែលងាយស្រួលក្នុង debug ដោយបោះចោលនូវករណីលើកលែងដ៏ពេញនិយមណៅពេលដែល class​ នឹងមិនអាចរកឃើញដោយ​ class loader។

២) ការតម្លើង

អ្នកអាចតម្លើងបានវិធី២របៀបផ្សេងពីគ្នា៖

បន្ទាប់មកទៀតគឺទាមទារអោយ​ vendor/autoload file ដើម្បីបើកនូវ​ autoloading​ mechanism ដែលផ្ដល់នូវ Composer។ បើមិនដូច្នេះទេ application របស់អ្នកនឹងមិនអាចមានសិទ្ធក្នុងការស្វែករកនូវ classes នៃ Symfony component មួយនេះ។

ប្រសិនបើលោកអ្នកមានបំណងចង់រៀនបន្ថែមទៀត សូមចុងទៅលើតំណភ្ជាប់ទាំងអស់នេះ៖

ចែករំលែក​អត្ថបទនេះទៅកាន់៖

Exit mobile version