PHP code example of ginkelsoft / laravel-data-consent
1. Go to this page and download the library: Download ginkelsoft/laravel-data-consent library . Choose the download type require .
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
ginkelsoft / laravel-data-consent example snippets
use Ginkelsoft\DataConsent\Actions\RecordConsent;
$consent = new RecordConsent;
$consent->grant(
subjectId: '01HXYZ',
purpose: 'newsletter',
version: '2026-05',
source: 'web',
metadata: ['ip' => '203.0.113.5', 'form' => 'signup-v3'],
);
$consent->withdraw(
subjectId: '01HXYZ',
purpose: 'newsletter',
version: '2026-05',
source: 'email',
);
use Ginkelsoft\DataConsent\Support\ConsentStatus;
$status = new ConsentStatus;
$status->isGranted('01HXYZ', 'newsletter');
$status->isGranted('01HXYZ', 'newsletter', version: '2026-05');
$status->latest('01HXYZ', 'newsletter');
$status->activeFor('01HXYZ');
$status->history('01HXYZ', purpose: 'newsletter');
use Ginkelsoft\ComplianceCore\Config\LogSecret;
use Ginkelsoft\ComplianceCore\Support\HashChain;
use Illuminate\Support\Facades\DB;
$entries = DB::table('consent_log')->orderBy('id')->get()
->map(fn ($row) => (array) $row)->all();
$intact = HashChain::verify($entries, LogSecret::value());
bash
php artisan retention:consent:grant 01HXYZ newsletter --consent-version=2026-05 --source=web
php artisan retention:consent:withdraw 01HXYZ newsletter --consent-version=2026-05 --source=email
php artisan retention:consent:status 01HXYZ
bash
composer vendor:publish --tag=compliance-config
php artisan vendor:publish --tag=consent-config
php artisan vendor:publish --tag=consent-migrations
php artisan migrate