PHP ist auch eine interpretative Sprache im Gegensatz zu RPG.
RPG wird kompiliert, PHP eben nicht.
Zur Laufzeit sind keine Variablennamen mehr bekannt sondern ausschließlich Adressen.
Variablennamen dienen nur uns Programmierern zum besseren Verständnis und einfacheren programmieren.

Du kannst natürlich auch eine Struktur (DS 10000 oder mehr) anlegen und alle Inhalte per Adresse %subst(MyDS:MyPos:MyLen) ansprechen.
Dann brauchst du dem Anwender nur noch die Adressen mitteilen und dann bist du entsprechend variabel.
Namen brauchst du dann nicht mehr.

Überlege noch mal dein Design oder verwende eine andere Programmiersprache.
Wie wärs mit REXX ?
Da kannst du schön mit variablen Namen und der Interpret-Anweisung arbeiten.

PS:
Das ist natürlich nicht ganz ernst gemeint.