kl3ryk / symfony-facebook-bundle
此组件提供官方Facebook SDK和常用Facebook配置,适用于任何Symfony组件。
1.5.4
2013-09-19 08:31 UTC
Requires
- php: >=5.4
- ext-curl: *
- facebook/php-sdk: ~3.2,>=3.2.2
- psr/log: ~1.0
- symfony/http-foundation: ~2.2
Requires (Dev)
- absolvent/phpunit-symfony: ~2.4,>=2.4.3
- fabpot/php-cs-fixer: ~0.2
- sebastian/diff: 1.0.*@dev
- symfony/browser-kit: ~2.2
- symfony/framework-bundle: ~2.2
README
此组件提供官方Facebook SDK客户端和常用Facebook配置(实现PrependExtensionInterface接口,见:https://symfony.com.cn/doc/current/cookbook/bundles/prepend_extension.html)供任何Symfony组件使用。
Facebook SDK客户端
- 与Symfony会话存储集成(与使用原生PHP会话的纯客户端不同)
- 与Symfony记录器集成
- 内部使用Symfony "请求"对象
使用此组件的组件
如果您使用此组件,请联系我或在您的pull request中更新README。
针对Facebook SDK用户
使用Facebook SDK
# config.yml facebook: application_id: "your_application_id" secret: "your_application_secret"
// Controllers/YourSymfonyController.php class YourSymfonyController extends Controller { function indexAction() { $readyToUseFacebookSdk = $this->get('facebook'); // ... done } }
使用扩展的Facebook SDK配置
# config.yml facebook: application_id: "your_application_id" secret: "your_application_secret" file_upload: true # indicate if your server configuration allows CURL @ file uploads permissions: # see: https://developers.facebook.com/docs/reference/login/#permissions - publish_actions - user_games_activity - ... etc trust_proxy_headers: true # Facebook SDK now trusts EVERY HTTP_X_FORWARDED_* header
针对Symfony组件开发者
使用Laelaps Bundle自动化您的组件Facebook配置
// Appkernel.php class AppKernel { public function registerBundles() { return [ // ... new \Laelaps\Bundle\Facebook\FacebookBundle, // ... ]; } }
# config.yml facebook: application_id: "your_application_id" secret: "your_application_secret"
// DependencyInjection/YourExtension.php use Laelaps\Bundle\Facebook\FacebookExtensionInterface; use Laelaps\Bundle\Facebook\FacebookExtensionTrait; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\HttpKernel\DependencyInjection\Extension; class YourExtension extends Extension implements FacebookExtensionInterface { use FacebookExtensionTrait; public function load(array $configs, ContainerBuilder $container) { print_r($configs); /* ( [application_id] => example_application_id [secret] => example_secret [file_upload] => [permissions] => Array ( ) [trust_proxy_headers] => ) */ } }
配置前缀
// DependencyInjection/YourExtension.php use Laelaps\Bundle\Facebook\FacebookExtensionInterface; use Laelaps\Bundle\Facebook\FacebookExtensionTrait; use Symfony\Component\DependencyInjection\ContainerBuilder; use Symfony\Component\HttpKernel\DependencyInjection\Extension; class YourExtension extends Extension implements FacebookExtensionInterface { use FacebookExtensionTrait; public function getFacebookConfigurationPrefix(array $config, ContainerBuilder $container) { return 'facebook_'; } public function load(array $configs, ContainerBuilder $container) { print_r($configs[0]); /* ( [facebook_application_id] => example_application_id [facebook_secret] => example_secret [facebook_file_upload] => [facebook_permissions] => Array ( ) [facebook_trust_proxy_headers] => ) */ } }
语义化版本控制
此存储库遵循Semantic Versioning 2.0.0。