В лоб - никак. PHP у вас крутится на сервере, а скрипт информера работает в браузере и подставляет данные уже там.
Но можно сделать иначе. Посмотреть через инструменты вебмастера в браузере куда и какие запросы шлет этот скрипт, какие данные и в каком формате получает. Это и будет ответ на вопрос где можно взять.
Везде.
На С++ пишут вообще все (ну почти). Контроллеры например на Си (и ассемблерах) программируют, на С++ - вряд-ли.
Руби и джаваскрипт - интерпретируемые, поэтому всякие низкоуровневые штуки на них не пишут (Операционные системы, драйвера, не программируют контроллеры вообще никак).
Руби - относительно универсальный язык, на нем пишут почти все, под мобильники в т.ч.
На джаваскрипте обычно пишут скрипты, которые исполняет браузер, и всякие плагины. Ну, например, плагины для фотошопа можно писать на джаваскрипте.
Для языка С++ есть библиотека Qt, частью которой является QML. Вот в QML можно описывать поведение объектов на джаваспите.
Кроме того, в Qt есть скриптовый язык (Qt Script) и с ним тоже можно описывать поведение объектов в программе на С++, хотя скрипты там тоже на джаваскрипте.
1) React делает код читабельным, т.е., (значительно)проще понять, как будет отрисован компонент.
2) JSX. Вставлять JS в DOM может показаться дикостью, но всё та же читабельность улучшается в разы, да и вообще это удобнее. Не нужно делать монолитный JS файл, ощутимая часть функционала сайта внедряется в разметку и собирается в автономные компоненты.
3) Самая объективная причина, это, наверное возможность рендера React'a на сервере, а не клиенте, что в разы ускоряет работу сервиса.
Ну а из минусов, как наверное у любого уровня представления это отсутствие системы событий и полное отсутствие слоёв данных.
Язык программирования JavaScript является довольно гибким, это его преимущество и одновременно недостаток, так как такая гибкость при банальной невнимательности может привести к падению всей программы.
Так, понятие "поднятие переменной" означает следующее:
В языке JavaScript, где бы вы не объявили переменную (в начале кода или в конце), ее обработка будет осуществляться до выполнения кода. То есть, если записать так:
то такой код будет равносилен следующему:
Для интерпретатора приведенные выше два отрезка кода абсолютно идентичны. Это и есть - поднятие переменных. Кстати, такое явление в некоторых источниках называется не "поднятием", а "всплытием".
Лично я там вижу две ошибки. Первая - это отсутствует кавычка, а вторая ошибка - это то, что нету в конце строки знака точка с запятой, то есть этого знака ";".
Было бы неплохо побольше таких вопросов, таких же лёгких, но только чтобы побольше писать, а то до 200 символов трудно ответ придумать.