PHP ကိုစတင်လေ့လာနေသည့် developer များအတွက်သင့်တော်သောမူဘောင်တစ်ခုကိုရွေးချယ်ခြင်းသည်ဖွံ့ဖြိုးမှုစွမ်းရည်နှင့်ကုဒ်အရည်အသွေးကိုတိုးတက်စေရန်အရေးကြီးသောခြေလှမ်းတစ်ခုဖြစ်သည်။ အလွန်ကောင်းမွန်သော PHP framework သည် MVC Architecture Concept ကိုနားလည်ရန်သာမကစီမံကိန်းဖွံ့ဖြိုးတိုးတက်မှုကိုပိုမိုထိရောက်စေရန်နှင့်စံနှုန်းများကိုစံသတ်မှတ်ရန်လက်တွေ့လုပ်ဆောင်ချက်များစွာကိုလည်းအထောက်အကူပြုနိုင်သည်။ အောက်ဖော်ပြပါလူကြိုက်အများဆုံး PHP Frameworks သုံးခုကိုကျွန်ုပ်တို့မိတ်ဆက်ပေးလိမ့်မည်။
Laravel သည်ယခုအခါအပြည့်အ 0 စာရွက်စာတမ်းများနှင့်ကြွယ်ဝသောဂေဟစနစ်များဖြင့်လူကြိုက်အများဆုံး PHP Framework များထဲမှတစ်ခုဖြစ်သည်။ ၎င်းကိုလှပသော Syntax နှင့် Completise ဖွဲ့စည်းပုံကိုလူသိများသည်။
အားသာချက်များ - ပြည့်စုံသောလုပ်ဆောင်ချက်များ, ကြော့ syntax, ဂေဟဗေဒနှင့်တက်ကြွသောအသိုင်းအဝိုင်း။
လက်တွေ့ကျတဲ့ဥပမာ - ဘလော့ဂ်စနစ်တစ်ခုကိုဖန်တီးပါ။
// တည်နေ routes/web.php အတွက်သတ်မှတ်ထားသောလမ်းကြောင်း
Route::get('/post/{id}', 'PostController@show');
// တည်နေ PostController.php အတွက် Controller နည်းလမ်းကိုဖန်တီးပါ
class PostController extends Controller
{
public function show($id)
{
$post = Post::find($id);
return view('post', ['post' => $post]);
}
}
// တည်နေ resources/views/post.blade.php အတွက်မြင်ကွင်းတစ်ခုဖန်တီးပါ
<h1>{{ $post->title }}</h1>
<p>{{ $post->content }}</p>Candigniter သည်၎င်း၏ပေါ့ပါးပြီးမြင့်မားသောစွမ်းဆောင်ရည်အတွက်လူသိများသည်။ အသေးစားနှင့်အလတ်စားစီမံကိန်းများကိုလျင်မြန်စွာတည်ဆောက်လိုသော developer များအတွက်အကောင်းဆုံးဖြစ်သည်။ ၎င်းသည်ရှုပ်ထွေးသော configuration လုံးဝနီးပါးမလိုအပ်ပါ။ သင်ယူမှုကွေးသည်အလွန်နူးညံ့သိမ်မွေ့သည်။
အားသာချက်များ - ရှင်းလင်းသောဖွဲ့စည်းပုံ, ရိုးရှင်းသောဖြန့်ကျက်ခြင်း,
လက်တွေ့ကျတဲ့ဥပမာ - အသုံးပြုသူမှတ်ပုံတင်စနစ်တည်ဆောက်ပါ။
// တည်နေ routes.php အတွက်သတ်မှတ်ထားသောလမ်းကြောင်း
$routes->add('register', '/register', 'UserController::register');
// တည်နေ UserController.php အတွက် Controller နည်းလမ်းကိုဖန်တီးပါ
class UserController extends CI_Controller
{
public function register()
{
$this->load->library('form_validation');
$this->form_validation->set_rules('username', 'Username', 'required');
$this->form_validation->set_rules('email', 'Email', 'required|valid_email');
$this->form_validation->set_rules('password', 'Password', 'required|min_length[8]');
if ($this->form_validation->run() === TRUE) {
// အသုံးပြုသူကိုဖန်တီးပါ
} else {
$this->load->view('register');
}
}
}
// တည်နေ views/register.php အတွက်မြင်ကွင်းတစ်ခုဖန်တီးပါ
<form action="/register" method="post">
<input type="text" name="username">
<input type="email" name="email">
<input type="password" name="password">
<button type="submit">Register</button>
</form>Symfony သည်ကြီးမားသောစီမံကိန်းဗိသုကာပညာနှင့် ပတ်သက်. ပိုမိုလေ့လာလိုသော developer များအတွက်သင့်တော်သောအစွမ်းထက်သော modular လုပ်ငန်းအဆင့်မူဘောင်တစ်ခုဖြစ်သည်။ သင်ယူမှုကွေးသည်အနည်းငယ်ပိုမိုမြင့်မားသော်လည်း၎င်း၏အစိတ်အပိုင်းတစ်ခုဒီဇိုင်းနှင့်မြင့်မားနိုင်မှုသည်၎င်းကိုစီးပွားရေးလုပ်ငန်းစီမံကိန်းများအတွက်ပထမဆုံးရွေးချယ်မှုဖြစ်စေသည်။
အားသာချက်များ - ညှိနှိုင်းတူးဖော်ခြင်း, ခိုင်မာသောစွမ်းရည်များ,
လက်တွေ့ကျတဲ့ဥပမာ - အနားယူရာ api ကိုတည်ဆောက်ခြင်း။
// တည်နေ src/Controller/PostController.php အတွက် Controller ကိုဖန်တီးပါ
namespace App\Controller;
use Symfony\Bundle\FrameworkBundle\Controller\AbstractController;
use Symfony\Component\Routing\Annotation\Route;
use Doctrine\ORM\EntityManagerInterface;
use App\Entity\Post;
class PostController extends AbstractController
{
/**
* @Route("/posts", methods={"GET"})
*/
public function index(EntityManagerInterface $em)
{
$posts = $em->getRepository(Post::class)->findAll();
return $this->json($posts);
}
}
// တည်နေ config/routes/api.yaml အတွက်သတ်မှတ်ထားသောလမ်းကြောင်း
api_posts:
path: /posts
methods: GETLaravel, canigniter သို့မဟုတ် symfony ကိုသင်ရွေးချယ်သည်ဖြစ်စေ 4 င်းတို့သည် PHP စီမံကိန်းများကိုပိုမိုထိရောက်စွာတည်ဆောက်ရန်ကူညီနိုင်သည်။ အစပြုသူများအတွက် Laravel သို့မဟုတ် costigniter ဖြင့်စတင်ရန်အကြံပြုသည်။