Как подписаться на изменение значения через оператор =?
С помощью Proxy:var obj = {};

var obj = new Proxy(obj, {
	set: function(target, key, value, self) {
		console.log("I have no idea what im doing");
		target[ key ] = value;
	}
});

obj.a = 2; // "I have no idea what im doing"
var value = 0;
var old-value = value;

function oldornot(new-value) {
value = new-value;
   if new-value == old-value {
     echo "Not changed";
   }
   else {
     echo "Changed";
     old-value = new-value;
   }

oldornot(59)
// Changed
oldornot(59)
// Not changed
Ты проверь и исправь если что-то не так, Давно уже не писал что-то на php