Please see the main PostHog docs.
Specifically, the PHP integration details.
- ✅ Event capture and user identification
- ✅ Error tracking with manual exception capture
- ✅ Opt-in automatic PHP exception, error, and fatal shutdown capture
- ✅ Feature flag local evaluation
- ✅ Feature flag dependencies (new!) - Create conditional flags based on other flags
- ✅ Multivariate flags and payloads
- ✅ Group analytics
- ✅ Comprehensive test coverage
- Copy
.env.exampleto.envand add your PostHog credentials - Run
php example.phpto see interactive examples of all features
Manual exception capture:
PostHog::captureException($exception, 'user-123', [
'$current_url' => 'https://example.com/settings',
]);Opt-in automatic capture from the core SDK:
PostHog::init('phc_xxx', [
'error_tracking' => [
'enabled' => true,
'capture_errors' => true,
'excluded_exceptions' => [
\InvalidArgumentException::class,
],
'context_provider' => static function (array $payload): array {
return [
'distinctId' => $_SESSION['user_id'] ?? null,
'properties' => [
'$current_url' => $_SERVER['REQUEST_URI'] ?? null,
],
];
},
],
]);Auto error tracking is off by default. When enabled, the SDK chains existing exception and error handlers instead of replacing app behavior.
- Download PHP and Composer
php composer.phar updateto install dependenciesbin/testto run tests (this script calls./vendor/bin/phpunit --verbose test)
See RELEASING.md.