вау решаемо сейчас !!!!!
Я проследил функции и нашел проблему. И это ....
в файле "try_auth.php" я использовал
"$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email',2,1, 'email');"
для получения электронной почты пользователя от провайдера. в Google это работает нормально, потому что Google игнорирует '2' (количество запрошенных адресов электронной почты), но в Yahoo! он генерирует [count.email] => 2 для него (в функции getSignedNS) и в ответе Yahoo нет записи для count.email. это вызывает возврат null в getSignedNS для Yahoo.
я изменился
"$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email',2,1, 'email');"
до
"$attribute[] = Auth_OpenID_AX_AttrInfo::make('http://axschema.org/contact/email',1,1, 'email');"
и теперь он работает нормально и возвращает все, что я просил у обоих провайдеров !!!
лол ...