PHP 彩蛋及其源代码
时间:2007-09-05 来源:linxh
用 PHP 写的网页,在其网址的后面用字符串 “?=PHPE9568F36-D428-11d2-A769-00AA001ACF42 ”作为参数,提交之后会出现一只小狗的照片。
根据PHP版本的不同,可能出现的照片也许是兔子或是别的。
有兴趣的可以试试
PS. 该 GUID 定义在 PHP 源码的 ext/standard/info.h 中:
#define PHP_EGG_LOGO_GUID "PHPE9568F36-D428-11d2-A769-00AA001ACF42"
类似的 GUID 还有:
PHP_LOGO_GUID:PHPE9568F34-D428-11d2-A769-00AA001ACF42
ZEND_LOGO_GUID:PHPE9568F35-D428-11d2-A769-00AA001ACF42
PHP_CREDITS_GUID:PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000'
秘密在main/logos.h中用数组定义的图像数据。
unsigned char zend_logo[] = { //定义的是一个Powered by Zend的LOGO
unsigned char php_logo[] = { //定义的是一个PHP的LOGO
unsigned char php_egg_logo[] = { //定义的是一个PHP彩蛋的LOGO,也就是愚人节那天会在phpinfo()里看到的图片
// 将GIF转换为C语言中的H文件
$filename = "mylogo.gif";
$fp = fopen($filename, "rb");
$buffer = fread ($fp, filesize ($filename));
fclose($fp);
$len = strlen($buffer);
$fp = fopen("mylogo.h", "wb");
fwrite($fp, "unsigned char php_logo[] = {");
for ($i=0; $i=$len; $i++) {
if($i % 10 == 0) {
fwrite($fp, "\n\t\t");
}
if($i == $len) {
$str = str_pad(ord(substr($buffer, $i, 1)), 3, " ", STR_PAD_LEFT);
} else {
$str = str_pad(ord(substr($buffer, $i, 1)), 3, " ", STR_PAD_LEFT) . ", ";
}
fwrite($fp, $str);
}
fwrite($fp, " };\n");
fclose($fp);
?>
上述代码的作用就是将一张GIF图片文件转换为C语言中的数组变量。
根据PHP版本的不同,可能出现的照片也许是兔子或是别的。
有兴趣的可以试试
PS. 该 GUID 定义在 PHP 源码的 ext/standard/info.h 中:
#define PHP_EGG_LOGO_GUID "PHPE9568F36-D428-11d2-A769-00AA001ACF42"
类似的 GUID 还有:
PHP_LOGO_GUID:PHPE9568F34-D428-11d2-A769-00AA001ACF42
ZEND_LOGO_GUID:PHPE9568F35-D428-11d2-A769-00AA001ACF42
PHP_CREDITS_GUID:PHPB8B5F2A0-3C92-11d3-A3A9-4C7B08C10000'
秘密在main/logos.h中用数组定义的图像数据。
unsigned char zend_logo[] = { //定义的是一个Powered by Zend的LOGO
unsigned char php_logo[] = { //定义的是一个PHP的LOGO
unsigned char php_egg_logo[] = { //定义的是一个PHP彩蛋的LOGO,也就是愚人节那天会在phpinfo()里看到的图片
// 将GIF转换为C语言中的H文件
$filename = "mylogo.gif";
$fp = fopen($filename, "rb");
$buffer = fread ($fp, filesize ($filename));
fclose($fp);
$len = strlen($buffer);
$fp = fopen("mylogo.h", "wb");
fwrite($fp, "unsigned char php_logo[] = {");
for ($i=0; $i=$len; $i++) {
if($i % 10 == 0) {
fwrite($fp, "\n\t\t");
}
if($i == $len) {
$str = str_pad(ord(substr($buffer, $i, 1)), 3, " ", STR_PAD_LEFT);
} else {
$str = str_pad(ord(substr($buffer, $i, 1)), 3, " ", STR_PAD_LEFT) . ", ";
}
fwrite($fp, $str);
}
fwrite($fp, " };\n");
fclose($fp);
?>
上述代码的作用就是将一张GIF图片文件转换为C语言中的数组变量。
相关阅读 更多 +
排行榜 更多 +