I.UA

Свежие фотографии

Неприятные последствия при переходе с 32-х битной на 64-х битную

  • 21.02.12, 08:47
  • php
При переходе с 32-х битной на 64-х битную версию PHP выплывает очень неприятный сюрприз - все функции, которые возвращали отрицательное целое число (crc32, ip2long, etc), при тех же данных, будут возвращать положительное число.

Результат работы следующего кода:
<?php
echo crc32('habrahabr test crc32');
?>

На 32х битах = -982057838, на 64х битах = 3312909458, фактически это одно и тоже число - 0хc576fc92, разница только в интерпретации знакового бита. Если это число дальше используется, например для вставки в Mysql (в поле типа signed int), то вместо ожидаемых 2х одинаковых записей мы получим: -982057838 и 2147483647.

Данная особенность связана с тем, что в PHP внутренним представлением целого числа является long, который соответственно на 32х битных системах является 4х байтовым, а на 64х битных 8-ми байтовым. Проблема выплывает из-за того что при выводе данных php использует шаблон вывода "%ld", а знаковым считается 32-й или 64-й бит в зависимости от битности сборки PHP.

Пути решения проблемы:
1) Выставить знаковый бит:
$crc = crc32($num);
if($crc & 0x80000000) 
$crc -= 2<<31;

2) При выводе использовать свой шаблон: (s)printf("%d", $crc) или (s)printf("%u", $crc).
3) Использовать 32-х битную версию PHP.

Новый интерфейс для смартфонов

Хотим представить Вашему вниманию новый дизайн PDA версии I.UA http://m.i.ua/

Расширение Google Chrome для проверки почты I.UA

Написали маленькое расширение для Google chrom-a, оно позволяет проверять количество новых писем у вас в  почте, а также при клике по нему переходит в ваш почтовый ящик.

Его можно бесплатно установить  с Сhrome Store

Новый сервис Радио (radio.i.ua)

  • 02.09.11, 18:03



Рады предложить вашему вниманию новый сервис Радио


Евротрип

Ух
3510км, 10 дней, море удовольствия :) 
Киев - Краковец - Краков - Величка - Катавицы - Вроцлав - Прага - Карловы Вары - Прага - Будапешт - Львов - Киев ...

Правила дорожного движения:







продолжение следует...

Widget popup

Если надо из виджета открыть окно (например для того чтобы показать больше информации),
Нужно повесить на клик создание новой активности у которой в манифесте прописан стиль

 "@android:style/Theme.Dialog"

<activity android:name=".Info" android:label="@string/app_name" android:theme="@android:style/Theme.Dialog">
<intent-filter>
        <action android:name="android.intent.action.MAIN" />
                <category android:name="android.intent.category.INFO" />
</intent-filter>
</activity>


import android.app.PendingIntent;
import android.appwidget.AppWidgetManager;
import android.appwidget.AppWidgetProvider;
import android.content.Context;
import android.content.Intent;
import android.util.Log;
import android.widget.PopupWindow;
import android.widget.RemoteViews;

public class Widget extends AppWidgetProvider
{    
    public void onReceive(Context context, Intent intent)
    {
        String action = intent.getAction();
        if (AppWidgetManager.ACTION_APPWIDGET_UPDATE.equals(action))
        {
       
            RemoteViews views = new RemoteViews(context.getPackageName(), R.layout.widget);
            
            Intent active = new Intent(context, Info.class);
            PendingIntent actionPendingIntent = PendingIntent.getActivity(context, 0, active, PendingIntent.FLAG_UPDATE_CURRENT); 
            views.setOnClickPendingIntent(R.id.Widget, actionPendingIntent);
                                    
            AppWidgetManager.getInstance(context).updateAppWidget(intent.getIntArrayExtra(AppWidgetManager.EXTRA_APPWIDGET_IDS), views);
        }
    }
}



www.informer.ua - шара каждый день

Рады представить вашему вниманию наш новый сервис www.informer.ua

При помощи которого вы можете приобрести скидки от 50% и выше!

Первая акция на которую вы можете приобрести скидку  - "Скидка 40-50% от службы доставки суши sushi-party.com.ua"


В дальнейшем здесь регулярно будут проходить акции от ресторанов, пабов, кафе, кинотеатров, спортклубов, салонов красоты, курсов иностранного языка и многих других.

Дополнительно регистрироваться на Informer.ua не обязательно,  достаточно просто авторизироваться нажав на кнопку "Войти" с логотипом I.UA

Желаем вам приятного аппетита и экономии ваших денег

I.UA Time Widget (Андроид виджет времени, погоды, почты)

Хотим представить вашему вниманию I.UA Widget:

Виджет который поможет всегда видеть на Вашем домашнем экране текущее время, погоду, а также количество новых сообщений в вашем почтовом ящике на I.UA. Также кликнув на одну из сторон вы автоматически попадете в соответствующий раздел PDA версии портала I.UA (погода или почта). (после установки, ищите виджет в списке виджетов - долгий клик на свободном месте домашнего экрана)








Ссылка на android market
QR код:




Начало :)


Вот начал работы над I.UA widget-ом под андроид





Тут так принято!

Есть три обезьяны в клетке. Они хотят есть, в центре клетки стоит стремянка, над ней висят бананы. Одна обезьяна полезла за ними — всех троих тут же окатили холодной водой из пожарного шланга. Так повторилось несколько раз, пока они и думать забыли про эти бананы. 
Потом одну из обезьян увели, привели новую. Она, не долго думая, полезла за бананами. Но! Две остальных её тут же оттянули от стремянки и дали ей по голове. Потом так поменяли вторую обезьяну, и все повторилось. Наконец — заменили третью. Когда она полезла за бананами, две других опять стянули её со стремянки и дали по голове. 

В итоге — в клетке оказалось три обезьяны, ни одна из которых не получала холодного душа за попытку достать бананы, но все они сторонились стремянки как огня. Почему? Потому, что тут так принято! 
Страницы:
1
2
3
4
5
6
8
предыдущая
следующая