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&amp;&amp;mysql)二
Oct 09 PHP
php 去除html标记--strip_tags与htmlspecialchars的区别详解
Jun 26 PHP
Win下如何安装PHP的APC拓展
Aug 07 PHP
那些年我们错过的魔术方法(Magic Methods)
Jan 14 PHP
两千行代码的PHP学习笔记汇总
Oct 05 PHP
PHP加密3DES报错 Call to undefined function: mcrypt_module_open() 如何解决
Apr 17 PHP
简单谈谈PHP中的include、include_once、require以及require_once语句
Apr 23 PHP
PHP上传图片时判断上传文件是否为可用图片的方法
Oct 20 PHP
PHP实现的Redis多库选择功能单例类
Jul 27 PHP
PHP数组式访问接口ArrayAccess用法分析
Dec 28 PHP
laravel框架关于搜索功能的实现
Mar 15 PHP
php TP5框架生成二维码链接
Apr 01 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
探寻PHP脚本不报错的原因
2014/06/12 PHP
两种设置php载入页面时编码的方法
2014/07/29 PHP
php安全配置记录和常见错误梳理(总结)
2017/03/28 PHP
js实现幻灯片播放图片示例代码
2013/11/07 Javascript
jquery.hotkeys监听键盘按下事件keydown插件
2014/05/11 Javascript
javascript中函数作为参数调用的方法
2015/02/09 Javascript
AngularJs bootstrap搭载前台框架——准备工作
2016/09/01 Javascript
基于JS实现bookstore静态页面的实例代码
2017/02/22 Javascript
AngularJS双向绑定和依赖反转实例详解
2017/04/15 Javascript
微信小程序实现滑动翻页效果(完整代码)
2019/12/06 Javascript
js实现文字头像的生成代码
2020/03/07 Javascript
用VsCode编辑TypeScript的实现方法
2020/05/07 Javascript
python 随机数生成的代码的详细分析
2011/05/15 Python
Python使用Flask框架同时上传多个文件的方法
2015/03/21 Python
Python实现的KMeans聚类算法实例分析
2018/12/29 Python
python 堆和优先队列的使用详解
2019/03/05 Python
简单了解django缓存方式及配置
2019/07/19 Python
解决Python二维数组赋值问题
2019/11/28 Python
基于python traceback实现异常的获取与处理
2019/12/13 Python
Python单链表原理与实现方法详解
2020/02/22 Python
ipython jupyter notebook中显示图像和数学公式实例
2020/04/15 Python
django模板获取list中指定索引的值方式
2020/05/14 Python
Python matplotlib读取excel数据并用for循环画多个子图subplot操作
2020/07/14 Python
Python 如何创建一个简单的REST接口
2020/07/30 Python
美国在线纱线商店:Darn Good Yarn
2019/03/20 全球购物
马来西亚网上花店:FlowerAdvisor马来西亚
2020/01/03 全球购物
Python的两道面试题
2013/06/29 面试题
幼儿园园长自我鉴定
2013/10/22 职场文书
企划专员岗位职责
2013/12/09 职场文书
护理职业生涯规划书
2014/01/24 职场文书
保险内勤岗位职责
2014/04/05 职场文书
石油工程专业毕业生求职信
2014/04/13 职场文书
家长对学校的意见和建议
2015/06/03 职场文书
生产设备维护保养制度
2015/08/06 职场文书
ORACLE数据库应用开发的三十个注意事项
2021/06/07 Oracle
Python Pandas pandas.read_sql_query函数实例用法分析
2021/06/21 Python