I certainly wouldn't use "variable variables". There once was a time that I thought they were quite cool, but then not long after I realized that they are just misplaced arrays of data. Using variable variables remove any possibility of using the vastly powerful native PHP array_
functions. I recommend that you stay away from them as much as possible.
Furthermore, you IDE is going to have a much harder time tracking your variably named variables and you'll see a bunch of false-positive warnings in your IDE that variables are being used without being closed.
I would probably map your input array (like @deceze mentioned), but vsprintf()
is a good technique to avoid concatenating the strings.
Code: (Demo)
$array = [
["Line 1", "Line 2", "Line 3"],
["Line 4", "Line 5", "Line 6"],
["Line 7", "Line 8", "Line 9"],
];
var_export(
array_map(
fn($row) => vsprintf('%s some code %s some code %s some code', $row),
$array
)
);
Output:
array (
0 => 'Line 1 some code Line 2 some code Line 3 some code',
1 => 'Line 4 some code Line 5 some code Line 6 some code',
2 => 'Line 7 some code Line 8 some code Line 9 some code',
)
Then (assuming your save the output as a variable instead of printing) whenever you want to re-access this data, you can cleanly use a basic loop.