anwarme / kafka-php
Some helper methods for ease of using apache kafka - the message broker. targeted at php developers using kafka as a message queueing system
1.0.280324
2024-03-28 07:35 UTC
Requires
- php: >=8.3
- ext-rdkafka: >=6.0.3
This package is auto-updated.
Last update: 2025-05-28 10:37:11 UTC
README
install
apt install php-rdkafka
composer require anwarme/kafka-php
examples
require_once "./vendor/autoload.php"; use RdKafka\Message; $kafka = new Kafka\KafkaPhp("localhost:9092"); $kafka->topic = 'v3-domainaggregate'; //$kafka->produce(payload: json_encode(['data empty']), headers: ['whitelist_label' => '$whitelist_label']); [$low, $high] = $wmoffsets = $kafka->watermarkOffsets(); echo "topic starting offset: $low, ending offset(EOF): $high\n"; echo "current offset position: " . $kafka->getCommittedOffset() . "\n"; /** @var Message[] $messages */ [$messages, $eof, $from_offset, $to_offset] = $m = $kafka->getMessages(0, RD_KAFKA_OFFSET_BEGINNING); echo("count fetched, EOF, fetched start offset, fetched last offset: " . json_encode([count($messages), $eof, $from_offset, $to_offset]) . "\n"); if (count($messages)) { echo "message headers: " . json_encode($messages[0]->headers) . "\n"; } $committedOffset = $kafka->getCommittedOffset(); echo "current offset position: $committedOffset\n";