У меня странная проблема:
Я отправляю видеофайл (3gp) в браузер смартфона.К сожалению, открытие файла заканчивается сообщением, что носитель поврежден.Поэтому я исследовал свой код и пришел к следующему:
У меня есть условное состояние для проверки переменной.Если я получаю доступ к этой переменной в операторе if, загрузка завершается неудачно.Если я только верну истину, это работает.Поэтому перед загрузкой я делаю много проверок.Последняя проверка выглядит следующим образом:
private function Commit($transactionGuid)
{
try
{
//Perform the commit process
$result = $this->_client->Commit(array('TransactionGUID' => $transactionGuid, 'Service' => $this->_service));
}
catch (SoapFault $result)
{
//TODO: Provide some error handling
return false;
}
$code = $result->CommitResult->Nr;
return true /*($code == 0)*/;
}
Как видите, функция выполняет запрос SOAP.Я посмотрел результат и все хорошо здесь.На запрос отвечает объект CommitResult
, который имеет свойство Nr.Это свойство дает 0, если все в порядке.Так что, если я запускаю код, как указано выше, загрузка работает.Но если я скажу return ($code == 0);
, это не получится на мобильных устройствах (Blackberry, Android и IPhone).
Кто-нибудь знает, что я делаю неправильно?