UserDefined_Obect_Types1.htm
Oracle supports to create user defined objects, and creating one or many table using those objects. Below is an over simplified example.
create or replace
TYPE empOBJ AS OBJECT
(
fname VARCHAR(20),
lname VARCHAR(30),
address VARCHAR(100)
);

--create table with empT1.sql
drop table empT1;
CREATE TABLE empT1
(
eid NUMBER(2) NOT NULL,
info empOBJ
);

Note: To query this table with PHP, you need to modifi SQL script to handle the embedded objects used in the table.