HTML5 canvas 元素学习笔记

此元素是定义图形的标签。
目前这个元素只能在谷歌浏览器、火狐浏览器、safari浏览器正常显示,据说IE9也支持,但是我没有看到它在我的IE中显示出来。
目前HTML5是比较新的一种标准,学习时一般要读英文文档,所以进度比较慢,我先写一部分。后面更新。。
在网页中作图要有javascript语言基础
HTML文档










下面全是javascript 代码:

如何突破封锁访问facebook、youtube、twitter 等网站

首先你先安装火狐浏览器

下载地址:http://www.firefox.com.cn/download/

然后安装 autoproxy组件

地址:https://addons.mozilla.org/zh-CN/firefox/addon/autoproxy/

安装好后点击火狐浏览器右上角的“福”标识符,选择自动模式

下面才是最有价值的内容:

打开网站http://www.sshcenter.info/

注册账号,激活账号后免费试用两天,当然也可以包年什么的

http://www.sshcenter.info/soft-download.php下载第一个软件

MyEnTunnel 3.5.2 unicode

下载后点击myentunnel.exe运行,输入账号和密码。。然后点击连接就可以了,其它的不用管。。

里面的原理和技术细节稍后我会在个人网站上说明

本文链接:http://lvxinwei.sinaapp.com/?p=272

 

 

 

HTML5与CSS3

现在HTML5 CSS3 炒的很热,最为目前最前沿的技术,我关注了一些技术细节,发现HTML5很强大并神奇地出现了接口,有望成为一门编程语言。

HTML 5有两大特点:首先,强化了 Web 网页的表现性能。其次,追加了本地数据库等 Web 应用的功能。一些其它技术细节没来得及研究。

CSS3在国内的发展状况不是很理想,今年4月份才有了第一本介绍该技术的书,我看了下英文开发文档,新增了一些选择符和结构伪类,让我谈它的优点我只能很浅显的说:在一些圆角设计和页面控制方面更简洁。当然它的应用有很多,我所了解的也是很浅显,,毕竟英文水平有待提高。

扯一条不挨题的话,学好英语很重要,平时有一些技术问题我都是看英文的解决方案。

附上一个链接讲了HTML5的书写格式。http://net.tutsplus.com/tutorials/html-css-techniques/25-html5-features-tips-and-techniques-you-must-know/

 

 

常用的PHP函数之字符串处理

定义和用法

strpos() 函数返回字符串在另一个字符串中第一次出现的位置。

如果没有找到该字符串,则返回 false

语法

strpos(string,find,start)

参数 描述

string

必需。规定被搜索的字符串。

find

必需。规定要查找的字符。

start

可选。规定开始搜索的位置。

提示和注释

注释:该函数对大小写敏感。如需进行对大小写不敏感的搜索,请使用
stripos()
函数。

例子

<?php

echo strpos(“Hello world!”,”wo”);

?>

输出:

6

parse_url

(PHP 4, PHP 5)

parse_url — 解析 URL,返回其组成部分

Report a bug

说明

array parse_url ( string $url )

本函数解析一个 URL 并返回一个关联数组,包含在 URL 中出现的各种组成部分。

本函数不是用来验证给定 URL 的合法性的,只是将其分解为下面列出的部分。不完整的 URL 也被接受,parse_url()
会尝试尽量正确地将其解析。

Report a bug

参数

url

要解析的 URL

Report a bug

返回值

对严重不合格的 URLparse_url()
可能会返回
FALSE
并发出
E_WARNING。否则会返回一个关联数组,其组成部分为(至少有一个):

  • scheme http
  • host
  • port
  • user
  • pass
  • path
  • query在问号
    ?
    之后
  • fragment在散列符号
    #
    之后

Report a bug

范例

Example #1 parse_url() 例子

<?php
$url = ‘http://username:password@hostname/path?arg=value#anchor’;

print_r(parse_url($url));
?>

以上例程会输出:

Array

(

[scheme] => http

[host] => hostname

[user] => username

[pass] => password

[path] => /path

[query] => arg=value

[fragment] => anchor

)

Report a bug

注释

Note:

本函数不能用于相对 URL

Note:

parse_url()
是专门用来解析 URL 而不是 URI 的。不过为遵从 PHP 向后兼容的需要有个例外,对 file:// 协议允许三个斜线(file:///…)。其它任何协议都不能这样。

Report a bug

参见

print_r()
显示关于一个变量的易于理解的信息。如果给出的是
string
integer
float
,将打印变量值本身。如果给出的是
array
,将会按照一定格式显示键和元素。object与数组类似。

记住,print_r()
将把数组的指针移到最后边。使用
reset()
可让指针回到开始处。

<pre>
<?php
$a = array (‘a’ => ‘apple’, ‘b’ => ‘banana’, ‘c’ => array (‘x’,‘y’,‘z’));
print_r ($a);
?>
</pre>

定义和用法

parse_str() 函数把查询字符串解析到变量中。

语法

parse_str(string,array)

参数 描述

string

必需。规定要解析的字符串。

array

可选。规定存储变量的数组名称。该参数指示变量存储到数组中。

unset — 释放给定的变量

Report a bug

描述

void unset ( mixed
$var [, mixed
$var [, $… ]] )

unset()
销毁指定的变量。注意在 PHP 3 中,unset()
将返回
TRUE(实际上是整型值 1),而在 PHP 4 中,unset()不再是一个真正的函数:它现在是一个语句。这样就没有了返回值,试图获取
unset()
的返回值将导致解析错误。

Example #1 unset() 示例

<?php
//
销毁单个变量

unset ($foo);

// 销毁单个数组元素
unset ($bar[‘quux’]);

// 销毁一个以上的变量
unset ($foo1, $foo2, $foo3);
?>

unset()
在函数中的行为会依赖于想要销毁的变量的类型而有所不同。

如果在函数中
unset()
一个全局变量,则只是局部变量被销毁,而在调用环境中的变量将保持调用
unset()
之前一样的值。

<?php
function destroy_foo() {
global $foo;
unset($foo);
}

$foo = ‘bar’;
destroy_foo();
echo $foo;
?>

上边的例子将输出:

bar

http_build_query

(PHP 5)

http_build_query — 生成 URL-encode 之后的请求字符串

Report a bug

说明

string http_build_query ( array $formdata [, string $numeric_prefix ] )

使用给出的关联(或下标)数组生成一个经过 URL-encode 的请求字符串。参数
formdata
可以是数组或包含属性的对象。一个
formdata数组可以是简单的一维结构,也可以是由数组组成的数组(其依次可以包含其它数组)。如果在基础数组中使用了数字下标同时给出了
numeric_prefix
参数,此参数值将会作为基础数组中的数字下标元素的前缀。这是为了让 PHP 或其它 CGI 程序在稍后对数据进行解码时获取合法的变量名。

Note:


arg_separator.output
来分隔参数。

Example #1 http_build_query() 使用示例

<?php
$data = array(‘foo’=>‘bar’,
‘baz’=>‘boom’,
‘cow’=>‘milk’,
‘php’=>‘hypertext processor’);

echo http_build_query($data); // foo=bar&baz=boom&cow=milk&php=hypertext+processor
?>

Example #2 http_build_query() 使用数字下标的元素

<?php
$data = array(‘foo’, ‘bar’, ‘baz’, ‘boom’, ‘cow’ => ‘milk’, ‘php’ =>‘hypertext processor’);

echo http_build_query($data);
/*
输出:
0=foo&1=bar&2=baz&3=boom&cow=milk&php=hypertext+processor
*/

echo http_build_query($data, ‘myvar_’);
/*
输出:
myvar_0=foo&myvar_1=bar&myvar_2=baz&myvar_3=boom&cow=milk&php=hypertext+processor
*/
?>

Example #3 http_build_query() 使用复杂的数组

<?php
$data = array(‘user’=>array(‘name’=>‘Bob Smith’,
‘age’=>47,
‘sex’=>‘M’,
‘dob’=>‘5/12/1956’),
‘pastimes’=>array(‘golf’, ‘opera’, ‘poker’, ‘rap’),
‘children’=>array(‘bobby’=>array(‘age’=>12,
‘sex’=>‘M’),
‘sally’=>array(‘age’=>8,
‘sex’=>‘F’)),
‘CEO’);

echo http_build_query($data, ‘flags_’);
?>

本例将输出(为可读性进行了折行):

user[name]=Bob+Smith&user[age]=47&user[sex]=M&user[dob]=5%1F12%1F1956&

pastimes[0]=golf&pastimes[1]=opera&pastimes[2]=poker&pastimes[3]=rap&

children[bobby][age]=12&children[bobby][sex]=M&children[sally][age]=8&

children[sally][sex]=F&flags_0=CEO

Note:

只有基础数组中的数字下标元素“CEO”才获取了前缀,其它数字下标元素(如 pastimes 下的元素)则不需要为了合法的变量名而加上前缀。

var_dump

(PHP 3 >= 3.0.5, PHP 4, PHP 5)

var_dump — 打印变量的相关信息

描述

void var_dump ( mixed expression [, mixed expression [, …]] )

此函数显示关于一个或多个表达式的结构信息,包括表达式的类型与值。数组将递归展开值,通过缩进显示其结构。

提示: 为了防止程序直接将结果输出到浏览器,可以使用输出控制函数来捕获此函数的输出,并把它们保存到一个例如
string
类型的变量中。

可以比较一下
var_dump()

print_r()

例子 1. var_dump() 示例

<pre>
<?php
$a = array (1, 2, array (“a”, “b”, “c”));
var_dump ($a);
/* 输出:
array(3) {
[0]=>
int(1)
[1]=>
int(2)
[2]=>
array(3) {
[0]=>
string(1) “a”
[1]=>
string(1) “b”
[2]=>
string(1) “c”
}
}
*/

$b = 3.1;
$c = TRUE;
var_dump($b,$c);

/*

输出:
float(3.1)
bool(true)
*/
?>
</pre>

ceil

(PHP 4, PHP 5)

ceil — 进一法取整

Report a bug

说明

float ceil ( float $value )

返回不小于
value
的下一个整数,
value如果有小数部分则进一位。ceil()
返回的类型仍然是
float
,因为
float
值的范围通常比
integer
要大。

Example #1 ceil() 例子

<?php
echo ceil(4.3); // 5
echo ceil(9.999); // 10
?>

参见
floor()

round()

floor — 舍去法取整

Report a bug

说明

float floor ( float $value )

返回不大于
value
的下一个整数,将
value的小数部分舍去取整。floor()
返回的类型仍然是
float
,因为
float
值的范围通常比
integer
要大。

Example #1 floor() 例子

<?php
echo floor(4.3); // 4
echo floor(9.999); // 9
?>

参见
ceil()

round()