Rumah > Artikel > pembangunan bahagian belakang > Laman web kitar semula terpakai yang dibangunkan menggunakan PHP menyepadukan fungsi log masuk sosial
Tapak web kitar semula terpakai yang dibangunkan menggunakan PHP menyepadukan fungsi log masuk sosial
Dengan perkembangan Internet, permintaan untuk pasaran kitar semula terpakai telah menjadi semakin kukuh. Untuk memudahkan pengguna dan meningkatkan kemudahan dan populariti tapak web, kami boleh menggunakan PHP untuk membangunkan tapak web kitar semula terpakai dan menyepadukan fungsi log masuk sosial. Artikel ini akan memperkenalkan cara menggunakan PHP untuk membangunkan tapak web kitar semula terpakai yang ringkas dan menggunakan fungsi log masuk sosial untuk memberikan pengguna pengalaman log masuk yang lebih mudah. Kami akan menggunakan penyepaduan log masuk sosial Facebook dan Google sebagai contoh.
1) Gunakan PHP untuk membangunkan tapak web kitar semula terpakai
Pertama, kita perlu menyediakan persekitaran PHP. Selepas pembinaan siap, kita boleh mula membangunkan laman web kitar semula terpakai. Di sini kami akan menggunakan corak MVC (Model-View-Controller) untuk membina tapak web kami. Ini ialah corak seni bina yang biasa digunakan yang membantu kami mengurus kod kami dengan lebih baik.
Kita boleh mencipta fail bernama index.php sebagai fail kemasukan laman web tersebut. Dalam fail ini, kami boleh menetapkan peraturan penghalaan untuk mengedarkan permintaan pengguna kepada pengawal yang berbeza.
<?php // index.php // 引入自动加载文件 require 'vendor/autoload.php'; // 实例化路由器 $router = new CoreRouter(); // 添加路由规则 $router->add('/', ['controller' => 'Home', 'action' => 'index']); // 解析路由 $router->dispatch();
Kemudian, kita boleh mencipta fail pengawal yang dipanggil "Home.php" yang mengendalikan permintaan pengguna.
<?php // Controllers/Home.php namespace AppControllers; class Home { public function index() { // 处理用户请求 } }
Seterusnya, kita perlu mencipta fail "View.php" untuk memaparkan antara muka pengguna. Fail ini akan bertanggungjawab untuk memaparkan kandungan halaman web kami.
<?php // Views/View.php namespace AppViews; class View { public static function render($view, $args = []) { extract($args, EXTR_SKIP); $file = dirname(__DIR__) . "/Views/$view"; if (is_readable($file)) { require $file; } else { throw new Exception("View not found: $view"); } } }
2) Sepadukan fungsi log masuk sosial
Untuk memudahkan pengguna log masuk ke laman web kitar semula terpakai kami, kami boleh menyepadukan fungsi log masuk sosial Facebook dan Google. Pengguna boleh log masuk terus menggunakan akaun media sosial mereka dan mengakses kefungsian laman web.
Pertama, kita perlu mencipta akaun pembangun Facebook untuk mendapatkan kunci API, ID aplikasi dan kunci aplikasi yang berkaitan.
<?php // config.php return [ 'facebook' => [ 'app_id' => 'YOUR_APP_ID', 'app_secret' => 'YOUR_APP_SECRET', 'default_graph_version' => 'v2.10', ], ];
Kemudian, kita boleh mencipta fail bernama "Facebook.php" yang merangkumi kod log masuk Facebook.
<?php // Libraries/Facebook.php namespace AppLibraries; use FacebookFacebook; class FacebookLogin { private $fb; private $helper; public function __construct() { $config = require 'config.php'; $this->fb = new Facebook([ 'app_id' => $config['facebook']['app_id'], 'app_secret' => $config['facebook']['app_secret'], 'default_graph_version' => $config['facebook']['default_graph_version'], ]); $this->helper = $this->fb->getRedirectLoginHelper(); } public function getLoginUrl($redirectUrl) { return $this->helper->getLoginUrl($redirectUrl, ['email']); } public function getUser() { try { $accessToken = $this->helper->getAccessToken(); $response = $this->fb->get('/me?fields=id,name,email', $accessToken); $user = $response->getGraphUser(); return $user; } catch (Exception $e) { return null; } } }
Seterusnya, kita boleh menggunakan kelas log masuk Facebook ini dalam pengawal kita.
<?php // Controllers/Home.php namespace AppControllers; use AppLibrariesFacebookLogin; class Home { public function index() { $fb = new FacebookLogin(); $loginUrl = $fb->getLoginUrl('http://example.com/facebook-callback'); AppViewsView::render('home.php', ['loginUrl' => $loginUrl]); } }
Akhir sekali, kita boleh mencipta fail paparan yang dipanggil "home.php" untuk memaparkan butang log masuk.
<!-- Views/home.php --> <a href="<?php echo $loginUrl; ?>">使用Facebook登录</a>
Begitu juga, kita boleh mencipta fail bernama "Google.php" untuk merangkum kod log masuk Google.
<?php // Libraries/Google.php namespace AppLibraries; use GoogleClient; class GoogleLogin { private $google; public function __construct() { $this->google = new Client(['client_id' => 'YOUR_CLIENT_ID']); } public function getLoginUrl($redirectUrl) { $this->google->setRedirectUri($redirectUrl); $this->google->addScope('email'); return $this->google->createAuthUrl(); } public function getUser() { $code = $_GET['code']; $accessToken = $this->google->fetchAccessTokenWithAuthCode($code); $this->google->setAccessToken($accessToken); $service = new Google_Service_Oauth2($this->google); $user = $service->userinfo->get(); return $user; } }
Kelas menggunakan pengawal log masuk Google.
<?php // Controllers/Home.php namespace AppControllers; use AppLibrariesFacebookLogin; use AppLibrariesGoogleLogin; class Home { public function index() { $fb = new FacebookLogin(); $google = new GoogleLogin(); $facebookLoginUrl = $fb->getLoginUrl('http://example.com/facebook-callback'); $googleLoginUrl = $google->getLoginUrl('http://example.com/google-callback'); AppViewsView::render('home.php', ['facebookLoginUrl' => $facebookLoginUrl, 'googleLoginUrl' => $googleLoginUrl]); } }
Tunjukkan butang log masuk Google dalam fail paparan.
<!-- Views/home.php --> <a href="<?php echo $facebookLoginUrl; ?>">使用Facebook登录</a> <a href="<?php echo $googleLoginUrl; ?>">使用Google登录</a>
Dengan cara ini, kami telah melengkapkan laman web kitar semula terpakai yang ringkas dan menyepadukan fungsi log masuk sosial Facebook dan Google. Pengguna kini boleh log masuk menggunakan akaun media sosial mereka untuk pengalaman log masuk yang lebih mudah. Melalui contoh ini, kita dapat melihat bahawa membangunkan tapak web kitar semula terpakai menggunakan PHP dan menyepadukan log masuk sosial adalah proses yang agak mudah. Saya harap artikel ini membantu anda, dan saya berharap anda berjaya dalam pembangunan!
Atas ialah kandungan terperinci Laman web kitar semula terpakai yang dibangunkan menggunakan PHP menyepadukan fungsi log masuk sosial. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!