if you determined the number of columns you can do it in pure mysql. For example, for 3 columns:
(select
max(f1), max(f2), max(f3)
from (
select
IF(ordinal_position=1,column_name,0) AS f1,
IF(ordinal_position=2,column_name,0) AS f2,
IF(ordinal_position=3,column_name,0) AS f3
from information_schema.columns where table_name='t') tt)
union
(select * from `t`)
source
share