¤Þ¤È¤á ¥Ö¥í¥° ¥À¥¦¥ó¥í¡¼¥É ·Ç¼¨ÈÄ ¥á¡¼¥ë

¤ì¤Ö¤í¤°

< 2008-07-13 (Æü) 2008-07-20 (Æü) > ºÇ¿·


2008-07-15 (²Ð)

¢£ ¥Ì¥ë¥Ð¥¤¥È¹¶·â¤Ø¤ÎÂкö

°Ê²¼¤Îµ­»ö¤ËÂФ¹¤ë¥Ä¥Ã¥³¥ß¡£

¤Ç¡¢¤³¤ì¤òPHP¤ÇÂн褹¤ë¤Ë¤Ï²¼µ­¤Î¥³¡¼¥É¤ò»È¤¨¤È¤¢¤ë¡£¤â¤Á¤í¤ó¾¤Î¤É¤Î¥µ¥¤¥È¤ò¤ß¤Æ¤â¤½¤¦¤·¤í¤È½ñ¤¤¤Æ¤¢¤ë¡£

// ½ªÃ¼Ê¸»úÎó¤ò¶õ¤Ë $v = str_replace( "\0", '', $v );

¤¿¤À¤·¡¢¤³¤Î¥³¡¼¥É¡¢¼«Ê¬¤¬»î¤·¤¿PHP4·Ï¤Ç¤Ï¤Þ¤Ã¤¿¤¯¤â¤Ã¤Æ¥¹¥ë¡¼¤µ¤ì¤Æ¤·¤Þ¤¤¡¢Î㤨¤ÐÃͤ¬¶õ¤Î¾ì¹ç¤ò´üÂÔ¤¹¤ë¤è¤¦¤Ê¥³¡¼¥É¡¢

If($v == '' ){ echo 'hello'; }

¤Ê¤ó¤Æ¤Î¤Ï³Ê¹¥¤Î±Â¿©¡£¤Ê¤¼¤Ê¤é\0¤¬Æþ¤Ã¤Æ¤ë¤Î¤Ç¥Þ¥Ã¥Á¤·¤Ê¤¤¤«¤é¡£¡£¡£Àµ¤·¤¯Æ°¤¯¥³¡¼¥É¤Ï²¼µ­¤ÎÄ̤ꡣ

// ½ªÃ¼Ê¸»úÎó¤ò¶õ¤Ë $v = str_replace( '\0', '', $v );

¤Ê¤ó¤Æ¤³¤È¤Ï¤Ê¤¯¡¢"(¥À¥Ö¥ë¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó)¤ò'(¥·¥ó¥°¥ë¥¯¥©¡¼¥Æ¡¼¥·¥ç¥ó)¤ËÊѤ¨¤ë¤À¤±¤Ê¤Î¤À¤±¤É¡¢PHP5·Ï¤À¤ÈµÕ¤Îưºî¤Ë¤Ê¤ë¤È¤³¤í¤¬¤Þ¤¿¤ä¤ä¤³¤·¤¤¡£¡£¡£¤Á¤Ê¤ß¤Ë¡¢Èù̯¤À¤±¤É¤Á¤ã¤ó¤È¶õ¤Ë¤·¤Æ¤¤¤ë¤«¤Ï²¼µ­¤Î¥³¥Þ¥ó¥É¤Ç¸¡¾Ú¤Ç¤­¤ë¡£

wget --post-data="v=¡ó£°£°" http://foo.com/bar.php

¢¨ 08/04/28Äɵ­ php-5.2.6¤Ç¤Ï'\0'¤ä"\\0"¤¸¤ã¤Ê¤¤¤È¥Þ¥Ã¥Á¤·¤Ê¤¤¤³¤È¤ò³Îǧ¡£¡£¡£

¤½¤ó¤Ê¤Ð¤«¤Ê¡¢¤È»×¤Ã¤¿¤Î¤Ç³Îǧ¤·¤Æ¤ß¤ë¡£

<?php

$str = "abc\0def";
echo bin2hex($str) . "\n";
echo bin2hex(str_replace("\0", '', $str)) . "\n";

¤³¤ì¤ò¼Â¹Ô¤¹¤ë¤È¡¢»ä¤Î¤È¤³¤í¤Ç¤Ï¡¢

61626300646566
616263646566

¤Èɽ¼¨¤µ¤ì¤Æ¡¢¤Á¤ã¤ó¤È "\0" ¤Ç NULL ʸ»ú¤òɽ¤»¤ë¤ó¤Ç¤¹¤±¤É¤Í¤§¡£ ¡ÊDebian ¤Î PHP 4.3.10 ¤È PHP 5.2.6 ¤Ç³Îǧ¡Ë

Tags: PHP | ¤³¤Î¥¨¥ó¥È¥ê¤ò´Þ¤à del.icio.us | ¤³¤Î¥¨¥ó¥È¥ê¤ò´Þ¤à¤Ï¤Æ¤Ê¥Ö¥Ã¥¯¥Þ¡¼¥¯ | ¤³¤Î¥¨¥ó¥È¥ê¤ò´Þ¤à livedoor ¥¯¥ê¥Ã¥× | Permalink
ËÜÆü¤Î¥ê¥ó¥¯¸µ

ÊÔ½¸