http://segmentfault.com/game/ 光棍节程序员闯关秀
前面几天到了第九关就过不了,就扔下没管了,这几天网上查看了些资料,很多都是用工具实现,自己试试用php写一个解码程序,还真成功了。
不多说,直接贴代码。
<?
不多说,直接贴代码。
<?
/**@author xiaoba
* @email xiaoba.li@qq.com
*
*/
$file = '1.txt'; //文件地址
$content = file_get_contents($file); //读取文件内容
//echo $content;
$content=str_replace("_","1",$content); //把_替换成关棍节的1
$content=str_replace("\r\n"," ",$content); //把换行替换成空格,因为下面以空格取字符串
$array = explode(" ", $content); //以空格为间隔变成数组存储字符串
//print_r($array);
for($i=0; $i<count($array); $i++)
{
//echo $array[$i]."<br>";
$con10=bindec($array[$i]); //把二进制转为十进制
//echo $con10."<br>";
$baseii.=chr($con10); //把十进制转为ascii,由于chr函数不支持二进制
}
//echo chr(52);
//echo $baseii;
$base64=base64_decode($baseii); //解码base64函数
$file2='2.txt';
if($k=fopen($file2,"w")) //打开文件
echo "open file success"."<br>";
fwrite($k,$base64);
fclose($k);
if(rename($file2,"targe.tar.gz")) //修改后缀为tar.gz
echo "rename success"."<br>";
?>
把最后一关的数字复制粘贴到 1.txt文件,1.txt文件和php文件在同一个目录,运行php代码后,就会得到一个targe.tar.gz压缩文件,解压就可以得到2张图片,一张空白,另外一张就是密码了。
把最后一关的数字复制粘贴到 1.txt文件,1.txt文件和php文件在同一个目录,运行php代码后,就会得到一个targe.tar.gz压缩文件,解压就可以得到2张图片,一张空白,另外一张就是密码了。