SyntaxHighlighter

2011-01-21

php mysql unicode 解決案

1.phpの設定ファイルをutf-8を使うように設定する(主にmbstring関連)

2.mysqlのグローバル設定をutf-8に設定、また、DB毎にutf-8に設定する

3.phpがmysqlに接続文に

mysql_set_charset('utf8');

を追加する。ただし、それはphp 5.2以降だけに対応するだそうだ…

http://oshiete.goo.ne.jp/qa/5799234.html



-- 追記2012.11.01 --
my.cnf (my.ini)に以下のブロックに記述があるかどうかを確認しよう

[mysql]
character-set-server=utf8
skip-character-set-client-handshake

[mysql]
default-character-set=utf8
skip-character-set-client-handshake

ちなみに、ウェブの記事を読むと、
[mysql]
default-character-set=utf8

との記事もありますが、MySQL 5.5からは[mysql]のところにdefault-character-setを記入するのがダメになったようだ。エラーが出てサーバーが立ち上がらない事になってしまうので、くれぐれも気をつけましょう。

2011-01-18

トレースファイルの内容を特定行だけ出力

SCTP: recieve & データ伝送だけに限定、最後の一行だけ出力

grep '^r.*S' sctp.tr | tail -n1

TCP: 最後の一行だけ出力

tail -n1 tcp.tr

2011-01-17

ns2ノート

本日の試し:

sctp.cc & sctp.h 内部に使っているspDestのdSrttの計算式は杉山計算式と同じ。つまり、そのまま使える。自分で作る必要はない。

sctp-cmt.cc


L2751 - ( In SctpCMTAgent::ProcessChunk() after CMT Change BLOCK )
...
/****** End CMT Change ******/
Boolean_E eThisDestWasUnconfirmed = FALSE;
Boolean_E eFoundUnconfirmedDest = FALSE;

/****** Begin Sugi Code ******/
/* This code is for MAX=2 transfor path. If there are more than 2,
You have to rewrite the algorithm. */
double dSrttArray[2]; // SRTT Array. For Saving the SRTTs from NODEs
int iSrttCount = 0; // NODE Counter;

for(spCurrNode = sDestList.spHead;
spCurrNode != NULL;
spCurrNode = spCurrNode->spNext)
{
spCurrDest = (SctpDest_S *) spCurrNode->vpData;
dSrttArray[iSrttCount] = spCurrDest->dSrtt;
iSrttCount++;
}

if(iSrttCount == 2){
printf("DEBUG:There are two SRTT!!\n");
double dDeltaSrtt = dSrttArray[0] - dSrttArray[1];
if(dDeltaSrtt < 0) dDeltaSrtt *= -1.0;
if(0.01 < dDeltaSrtt && dDeltaSrtt < 0.03)
{
eUseCmtDelAck = TRUE;
eUseCmtPF = TRUE;
}
else
{
eUseCmtDelAck = FALSE;
eUseCmtPF = FALSE;
}
}

/****** End Sugi Code ******/

switch(eState)
...

2010-10-20

Round Robin

ラウンドロビンスケジューリング

全ての線に同じ時間で切り替えること

OSでのRRの例
プログラム1、2、3がある。
一定時間をくっきりにプログラム1,2,3の順でマルチタスク化する。
P1(5s)->P2(5s)->P3(5s)->P1(5s)->...
それをラウンドロビンスケジューリングというもの

2010-09-22

MultiByte と WideChar の変換について

何回もやっちゃったので、一応ノートを書いておきます。

MSDN:
MultiByteToWideChar()
WideCharToMultiByte()

使う例:

char before[]="変換前";
WCHAR wcAfter[1024];
char mbAfter[1024];

MultiByteToWideChar(CP_UTF8, NULL, before, -1, wcAfter, 0);

WideCharToMultiByte(CP_UTF8, NULL, wcAfter, -1, mbAfter, 0, NULL, NULL);

一般の文字列の場合、TEXT("使いたい文字")を使ったほうが便利かも。

どうやら、WideCharToMultiByteの場合がやや面倒くさい。

人気の投稿