Since 2.5.23 or 73f5601 Extensions that use more than one <update> tag in the update stream can't update via auto updater.
Example: http://vi-solutions.de/updates/visforms/extension.xml
If the last version is on the top (in the first <update> tag) or we have only one <update> tag all is good and the updates will be find.
Why are you touching the php version check?