$ это ссылка на текущий объект (изнутри объекта). Поскольку у вас есть свойство $ vocab внутри объекта, вы можете сказать $ this-> vocab для доступа к этому свойству. Вы также можете сделать это без $ this, но $ this (IMHO) проясняет ситуацию с тем, на какие объекты вы ссылаетесь, когда вы начинаете наследовать объекты.
Кроме того, если это жестко заданные значения, а не извлеченные из базы данных, почему бы не использовать языковой файл с определениями в нем? Такие как:
языки / english.php
define('LANG_YES', 'Yes');
define('LANG_NO', 'No');
define('LANG_CANCEL', 'Cancel');
define('LANG_WELCOME', 'Welcome!');
языки / french.php
define('LANG_YES', 'Oui');
define('LANG_NO', 'N');
define('LANG_CANCEL', 'Annuler');
define('LANG_WELCOME', 'Bienvenue');
Затем включите правильный файл в ваш файл "common.php" или "includes.php". Оттуда вы можете использовать константы по всей вашей странице. Вы даже можете расширить его, сделав (если это так) английский файл по умолчанию и выполнить
if (!defined('LANG_YES')) define('LANG_YES','Yes');
Затем вы можете сначала загрузить другой язык, затем english.php (так что вы можете убедиться, что у вас есть хотя бы значение по умолчанию, если оно еще не переведено)