entity/traits/Properties.php
protected function originalIsNumericallyEquivalent($property)
    {
        $current = $this->properties[$property];

        $original = $this->original[$property];

        // This method checks if the two values are numerically equivalent even if they
        // are different types. This is in case the two values are not the same type
        // we can do a fair comparison of the two values to know if this is dirty.
        return is_numeric($current) && is_numeric($original)
            && strcmp((string)$current, (string)$original) === 0;
    }
protected function originalIsNumericallyEquivalent($property)
    {
        $current = $this->properties[$property];

        $original = $this->original[$property];

        // This method checks if the two values are numerically equivalent even if they
        // are different types. This is in case the two values are not the same type
        // we can do a fair comparison of the two values to know if this is dirty.
        return is_numeric($current) && is_numeric($original)
            && strcmp((string)$current, (string)$original) === 0;
    }
Determine if the new and old values for a given key are numerically equivalent.

@param  string $property
@return bool