MySQL Database I18N, a JSON approach?
===

I'm trying to implement i18n in a MySQL/PHP site.

I've read answers stating that "i18n is not part of database normally", which I think is a somewhat narrow-minded approach.
What about product namesd, or, like in my instance, a menu structure and contents stored in the db?

I would like to know what do you think of my approach, taking into account that the languages should be extensible, so I'm trying to avoid the "one column for each language solution".

One solution would be to use a reference (id) for the string to translate and for every translatable column have a table with primary key, string id, language id and translation.

Another solution I thought was to use JSON. So a menu entry in my db would look like:

    idmenu label
    ------ -------------------------------------------
    5      {"en":"Homepage", "it":"pagina principale"}

What do you think of this approach?