A pure enum has no value, and that is the point

A pure enum has cases and nothing behind them, which makes it useless for a database column and exactly right for a distinction that only exists inside the program.

enum Direction
{
    case Ascending;
    case Descending;
}

$d = Direction::Ascending;

$d->name;      // 'Ascending' — the only thing available
$d->value;     // Error: undefined property
Direction::cases();   // [Direction::Ascending, Direction::Descending]

The absence of a value is a design decision rather than an omission: a pure case is identified by nothing except itself, so there is no scalar to store, serialise or accidentally compare against a string. name exists and is tempting to persist, and persisting it recreates every problem a backed enum solves properly — a rename becomes a data migration nobody notices is needed. If the value has to leave the process, it wanted to be backed.