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 相关文章推荐
初探PHP5
Oct 09 PHP
PHP获取中英混合字符串长度的方法
Jun 07 PHP
php中把美国时间转为北京时间的自定义函数分享
Jul 28 PHP
php格式化日期实例分析
Nov 12 PHP
PHP使用pear自带的mail类库发邮件的方法
Jul 08 PHP
PHP使用递归算法无限遍历数组示例
Jan 13 PHP
PHP中大括号'{}'用法实例总结
Feb 08 PHP
thinkphp ajaxfileupload实现异步上传图片的示例
Aug 28 PHP
Laravel框架执行原生SQL语句及使用paginate分页的方法
Aug 17 PHP
PHP使用PDO操作sqlite数据库应用案例
Mar 07 PHP
Yii2.0框架behaviors方法使用实例分析
Sep 30 PHP
php引用传递
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的ASCII码转换类
2013/07/05 PHP
PHP自动生成后台导航网址的最佳方法
2013/08/27 PHP
使用PHP强制下载PDF文件示例
2014/01/17 PHP
Javascript document.referrer判断访客来源网址
2020/05/15 Javascript
jquery.jstree 增加节点的双击事件代码
2010/07/27 Javascript
实现动画效果核心方式的js代码
2013/09/27 Javascript
解决Jquery鼠标经过不停滑动的问题
2014/03/03 Javascript
浅谈Javascript中匀速运动的停止条件
2014/12/19 Javascript
jQuery实现分章节锚点“回到顶部”动画特效代码
2015/10/23 Javascript
浅析JavaScript作用域链、执行上下文与闭包
2016/02/01 Javascript
BootStrap 超链接变按钮的实现方法
2016/09/25 Javascript
Bootstrap基本组件学习笔记之按钮组(8)
2016/12/07 Javascript
jQuery电话号码验证实例
2017/01/05 Javascript
Node.js数据库操作之连接MySQL数据库(一)
2017/03/04 Javascript
vue获取input输入值的问题解决办法
2017/10/17 Javascript
vue中关闭eslint的方法分析
2018/08/04 Javascript
webpack4 升级迁移的实现
2018/09/12 Javascript
Angular6新特性之Angular Material
2018/12/28 Javascript
vue+element实现表单校验功能
2019/05/20 Javascript
在Koa.js中实现文件上传的接口功能
2019/10/08 Javascript
vue实现弹幕功能
2019/10/25 Javascript
[43:26]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第二场 11.20
2020/11/23 DOTA
python如何对实例属性进行类型检查
2018/03/20 Python
Python获取二维矩阵每列最大值的方法
2018/04/03 Python
Python DataFrame设置/更改列表字段/元素类型的方法
2018/06/09 Python
Python如何对齐字符串
2020/07/30 Python
python 8种必备的gui库
2020/08/27 Python
CSS3 倾斜的网页图片库实例教程
2009/11/14 HTML / CSS
世界第一曲奇连锁店:Mrs. Fields Cookies
2017/02/04 全球购物
Osklen官方在线商店:巴西服装品牌
2019/04/25 全球购物
法国包包和行李箱销售网站:Bagage24.fr
2020/03/24 全球购物
采购文员岗位职责
2013/11/20 职场文书
工地门卫岗位职责
2013/12/30 职场文书
个人整改方案范文
2014/10/25 职场文书
项目建议书
2015/02/04 职场文书
Spring Cloud Netflix 套件中的负载均衡组件 Ribbon
2022/04/13 Java/Android