Industrial automation · PHP-native

The OPC UA ecosystem, in pure PHP.

One stack — client, CLI, daemon, framework bridges, code-generated companion specs, test servers. Synchronous, single-threaded, ext-openssl only. No native bindings, no JVM, no surprises.

$ composer require php-opcua/opcua-client
Architecture

Four layers, one stack.

The ecosystem is a thin pyramid: a pure-PHP core, three sidearms that depend on it, two framework bridges that wrap the lot, and two Docker-Compose test suites for anyone shipping an OPC UA client.

01 Test infrastructure
uanetstandard-test-suite · extra-test-suite
02 Framework integrations
laravel-opcua · symfony-opcua
03 Companion
opcua-cli · opcua-session-manager · opcua-client-nodeset
04 Core
opcua-client
The core

Speak the protocol natively.

One library does the work — secure channels, sessions, 8 service modules, 10 security policies, 47 PSR-14 events. Synchronous, single-threaded, no native dependencies beyond ext-openssl.

Companion

Three sidearms.

A terminal tool, a session-persistence daemon, and pre-generated typed classes for 51 OPC Foundation companion specs. Each pulls its weight without forcing it on you.

Framework integrations

Drop into your stack.

A facade, a service container binding, config + events + queues + log channels. Whether you live in Laravel or in Symfony, the integration looks like every other binding in your app.

Test infrastructure

Test your client against the spec.

Two Docker-Compose suites — the OPC Foundation reference implementation, and an open62541-backed companion that fills its gaps. Use them from any language, not just PHP.

In production

Powering OPC UA in the real world.

Companies running this ecosystem against real PLCs, in real factories. Each story below is a deployment that ships every day.

Consorzio C2T logo

Consorzio C2T

Italy Industry 4.0

Drives Industry 4.0 adoption for their member companies — php-opcua is the protocol layer behind their connected-plant projects.

Full

stack deployed

MES systems · Industry 4.0 grant projects

Stack

laravel-opcua opcua-client opcua-client-nodeset opcua-session-manager
Visit website
Egloo logo

Egloo

Italy Software house

Drops the raw client into bespoke continuous-monitoring and notification systems — no framework wrapper, no daemon, just php-opcua talking to the plant floor.

Core

protocol layer

Continuous monitoring · alerting backends

Stack

opcua-client
Visit website

Your factory here?

Submit a deployment

Running php-opcua in production? Drop us a line — we'll write up your story and add your logo to this wall.

Get in touch →

With thanks to our sponsors

Start reading

Three minutes to a session.

Install the client, point it at an OPC UA server, read a node. Everything else is a refinement of these three calls.