PHP+javascript模拟Matrix画面


Posted in PHP onOctober 09, 2006

    直接存为*.php文件运行即可。

<?
  $color_back="#000000";
  $number_w=8;
  $number_h=6;
  $space=1;
  $font_size=20;
  $speed=0;
?>
<html>
<head>
<title>The Matrix</title>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">

<script language="javascript">
// *****************************************************************
//                   Written By Caocao
//                   caocao@eastday.com
//                   http://caocao.oso.com.cn
// *****************************************************************
number_h=<? echo $number_h;?>;
number_w=<? echo $number_w;?>;
step=5;
text=new Array("A","B","C","D","E","F","G","H","I","J","K","L","M","N","O","P","Q","R","S","T","U","V","W","X","Y","Z");
grad=new Array("#000000","#004000","#008000","#00C000","#00FF00");

function line()
{
  this.start=100;
  this.end=60;
  this.restart=0;
}

function randchar()
{
  return (text[Math.round(Math.random()*25)]);
}

function initial()
{
  matrix=new Array();
  light=new Array();
  for (i=0;i<number_h;i++)
  {
    for (j=0;j<number_w;j++)
    {
      matrix[i*number_h+j]="<? echo $color_back;?>";
    }
  }
  for (j=0;j<number_w;j++)
  {
    light[j]=new line();
  }
}

function new_light()
{
  for (j=0;j<number_w;j++)
  {
    if (light[j].restart==0)
    {
      light[j].start=0;
      light[j].end=-10-Math.round(Math.random()*20);
      light[j].restart=light[j].end-Math.round(Math.random()*20);
    }
    else
    {
      light[j].start++;
      light[j].end++;
      light[j].restart++;
    }
  }
}

function new_color(i,j)
{
  if ((light[j].start-i)<5&&(light[j].start-i)>0)
  {
    return (light[j].start-i);
  }
  if ((i-light[j].end)<5&&(i-light[j].end)>0)
  {
    return (i-light[j].end);
  }
  if ((i-light[j].end)>4&&(light[j].start-i)>4)
  {
    return (4);
  }
  return (0);
}

function display()
{
  for (i=0;i<number_h;i++)
  {
    for (j=0;j<number_w;j++)
    {
      eval("w"+i+"h"+j).innerHTML="<font color="+grad[new_color(i,j)]+">"+randchar()+"</font>";
    }
  }
}

function show()
{
  new_light();
  display();
  setTimeout("show()",<? echo $speed;?>);
}
</script>
<style type="text/css">
<!--
<?
  echo ".size,tr,td {  font-size: ".$font_size."pt; line-height: ".$font_size."pt ;color:#00FF00}n";
?>
-->
</style>
</head>

<?
  echo "<body bgcolor=".$color_back.">";

  echo "<table width=".($number_w*$font_size)." border=0 cellspacing=".$space." cellpadding=0>";
  for ($i=0;$i<$number_h;$i++)
  {
    echo "<tr>";
    for ($j=0;$j<$number_w;$j++)
    {
      echo "<td id=w".$i."h".$j.">M</td>";
    }
    echo "</tr>";
  }
  echo "</table>";
?>

<script language="javascript">
  initial();
  show();
</script>
</body>
</html>

PHP 相关文章推荐
PHP个人网站架设连环讲(一)
Oct 09 PHP
php5中date()得出的时间为什么不是当前时间的解决方法
Jun 30 PHP
PHP面向对象分析设计的经验原则
Sep 20 PHP
php通过文件头检测文件类型通用代码类(zip,rar等)
Oct 19 PHP
apache+codeigniter 通过.htcaccess做动态二级域名解析
Jul 01 PHP
在项目中寻找代码的坏命名
Jul 14 PHP
windows7下安装php的php-ssh2扩展教程
Jul 04 PHP
浅谈php中include文件变量作用域
Jun 18 PHP
详解PHP实现异步调用的4种方法
Mar 14 PHP
PHP正则匹配操作简单示例【preg_match_all应用】
Jul 10 PHP
php删除二维数组中的重复值方法
Mar 12 PHP
PHP getDocNamespaces()函数讲解
Feb 03 PHP
用PHP和ACCESS写聊天室(五)
Oct 09 #PHP
用PHP和ACCESS写聊天室(四)
Oct 09 #PHP
用php和MySql来与ODBC数据连接
Oct 09 #PHP
WHOIS类的修改版
Oct 09 #PHP
很实用的一个完整email发送程序
Oct 09 #PHP
用PHP和ACCESS写聊天室(三)
Oct 09 #PHP
对javascript和select部件的结合运用
Oct 09 #PHP
You might like
十大催泪虐心动漫电影,有几部你还没看
2020/03/04 日漫
php 远程关机操作的代码
2008/12/05 PHP
php+mysqli实现批量执行插入、更新及删除数据的方法
2015/01/29 PHP
thinkphp3.2点击刷新生成验证码
2016/02/16 PHP
thinkphp 验证码 的使用小结
2017/05/07 PHP
让iframe自适应高度(支持XHTML,支持FF)
2007/07/24 Javascript
javascript 日期常用的方法
2009/11/11 Javascript
8个实用的jQuery技巧
2014/03/04 Javascript
关于JS中二维数组的声明方法
2016/09/24 Javascript
jQuery实现表格文本框淡入更改值后淡出效果
2016/09/27 Javascript
详解Angularjs在控制器(controller.js)中使用过滤器($filter)格式化日期/时间实例
2017/02/17 Javascript
微信小程序 wx.login解密出现乱码的问题解决办法
2017/03/10 Javascript
JavaScript验证知识整理
2017/03/24 Javascript
javascript 的变量、作用域和内存问题
2017/04/19 Javascript
JavaScript之浏览器对象_动力节点Java学院整理
2017/07/03 Javascript
angular2 ng build部署后base文件路径问题详细解答
2017/07/15 Javascript
JS计算斐波拉切代码实例
2019/09/12 Javascript
[54:10]Spirit vs NB Supermajor小组赛 A组败者组决赛 BO3 第一场 6.2
2018/06/03 DOTA
python数字图像处理之高级滤波代码详解
2017/11/23 Python
python3实现域名查询和whois查询功能
2018/06/21 Python
flask框架jinja2模板与模板继承实例分析
2019/08/01 Python
Python GUI学习之登录系统界面篇
2019/08/21 Python
python opencv根据颜色进行目标检测的方法示例
2020/01/15 Python
python多进程使用函数封装实例
2020/05/02 Python
Django日志及中间件模块应用案例
2020/09/10 Python
Django-silk性能测试工具安装及使用解析
2020/11/28 Python
python 如何对logging日志封装
2020/12/02 Python
请介绍一下Ant
2016/07/22 面试题
说说在weblogic中开发消息Bean时的persistent与non-persisten的差别
2013/04/07 面试题
社区党总支书记先进事迹材料
2014/01/24 职场文书
高中生学期学习自我评价
2014/02/24 职场文书
颂军魂爱军营演讲稿
2014/09/13 职场文书
2014县委书记党的群众路线教育实践活动对照检查材料思想汇报
2014/09/22 职场文书
2015年大学辅导员工作总结
2015/05/12 职场文书
2015年学校禁毒工作总结
2015/05/27 职场文书
经销商会议开幕词
2016/03/04 职场文书