当前位置: 编程技术>php
本页文章导读:
▪《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
实例11:日期戳、日期显示 代码如下: <?php echo time();//返回一串以秒计算的时间数字戳 echo "<br>"; echo date("Y-m-d H:i:s",time()+8*3600);//格式化时间,+8*3600变为中国时区时间 echo "<br>"; $str=.........
▪《PHP编程最快明白》第三讲:php数组
实例7:数组值基本操作 代码如下: <?php $arr=array('a'=>"你",'b'=>"我","他"); $arr[]="其他"; echo $arr['b']."<br>"; $arr['c']="";//给个空值,但仍然占着位置的 echo count($arr)."<br>";//数组有多.........
▪《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
数字、浮点、布尔型是值类型,英文:int、float、bool,这样你知道他们怎么用了。 比如语句:$fa=3.14; 字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地.........
[1]《PHP编程最快明白》第四讲:日期、表单接收、session、cookie
来源: 互联网 发布时间: 2013-11-30
实例11:日期戳、日期显示
<?php
echo time();//返回一串以秒计算的时间数字戳
echo "<br>";
echo date("Y-m-d H:i:s",time()+8*3600);//格式化时间,+8*3600变为中国时区时间
echo "<br>";
$str="2010-08-24 10:26:10";
echo date("Y-m-d H:i:s",strtotime($str));//strtotime将字符串转为时间戳
echo "<br>";
?>
实例12:表单变量编码、接收
<?php
echo $str=urlencode("第一页");//URL变量编码,跟google一样
echo "<br>".urldecode($str);//URL变量解码,我看到了
echo "<br><a href=/blog_article/index/page/.html".$str.">第一页</a>";
echo "<br>";
if($_GET)echo "变量已接收:".$_GET['page'];//$_GET对应$_POST,PHP是自动识别URL编码并自动解码好的。
echo "<br>";
?>
实例13:session使用
<?php
session_start();//session在浏览器关闭后马上失效,需要这样声明才能读写session
$_SESSION['id']='服务器';//这就是声明和初始化了,和数组用法一样
$_SESSION['name']='会话';
print_r($_SESSION);//会话注册成功输出一个数组
echo "<br>";
$_SESSION['id']='还是服务器';//改变一个会话,再输出看看
unset($_SESSION['name']);//注销一个会话,再输出看看
print_r($_SESSION);
echo "<br>";
?>
实例14:cookie使用
<?php
setcookie("id","客户端");//这就是声明和初始化cookie的函数。关闭浏览器即失效
setcookie("name","会话",time()+3600);//自此1小时后失效
print_r($_COOKIE);//会话注册成功输出一个数组,也可以用$HTTP_COOKIE_VARS访问
echo "<br>";
setcookie("id","还是客户端");//改变一个会话,再输出看看
unset($_COOKIE['name']);//注销一个会话,再输出看看,等价于setcookie("name","",time()-1);这是很多书上说的,其实用unset也能注销
print_r($_COOKIE);
echo "<br>";
?>
代码如下:
<?php
echo time();//返回一串以秒计算的时间数字戳
echo "<br>";
echo date("Y-m-d H:i:s",time()+8*3600);//格式化时间,+8*3600变为中国时区时间
echo "<br>";
$str="2010-08-24 10:26:10";
echo date("Y-m-d H:i:s",strtotime($str));//strtotime将字符串转为时间戳
echo "<br>";
?>
实例12:表单变量编码、接收
代码如下:
<?php
echo $str=urlencode("第一页");//URL变量编码,跟google一样
echo "<br>".urldecode($str);//URL变量解码,我看到了
echo "<br><a href=/blog_article/index/page/.html".$str.">第一页</a>";
echo "<br>";
if($_GET)echo "变量已接收:".$_GET['page'];//$_GET对应$_POST,PHP是自动识别URL编码并自动解码好的。
echo "<br>";
?>
实例13:session使用
代码如下:
<?php
session_start();//session在浏览器关闭后马上失效,需要这样声明才能读写session
$_SESSION['id']='服务器';//这就是声明和初始化了,和数组用法一样
$_SESSION['name']='会话';
print_r($_SESSION);//会话注册成功输出一个数组
echo "<br>";
$_SESSION['id']='还是服务器';//改变一个会话,再输出看看
unset($_SESSION['name']);//注销一个会话,再输出看看
print_r($_SESSION);
echo "<br>";
?>
实例14:cookie使用
代码如下:
<?php
setcookie("id","客户端");//这就是声明和初始化cookie的函数。关闭浏览器即失效
setcookie("name","会话",time()+3600);//自此1小时后失效
print_r($_COOKIE);//会话注册成功输出一个数组,也可以用$HTTP_COOKIE_VARS访问
echo "<br>";
setcookie("id","还是客户端");//改变一个会话,再输出看看
unset($_COOKIE['name']);//注销一个会话,再输出看看,等价于setcookie("name","",time()-1);这是很多书上说的,其实用unset也能注销
print_r($_COOKIE);
echo "<br>";
?>
[2]《PHP编程最快明白》第三讲:php数组
来源: 互联网 发布时间: 2013-11-30
实例7:数组值基本操作
<?php
$arr=array('a'=>"你",'b'=>"我","他");
$arr[]="其他";
echo $arr['b']."<br>";
$arr['c']="";//给个空值,但仍然占着位置的
echo count($arr)."<br>";//数组有多少个值。
unset($arr['b']);//这函数可以注销字符串、整个数组等值类型和引用类型。
print_r($arr);//这函数打印数值、引用类型的整个内部结构。
echo "<br>";
foreach($arr as $key=>$value)
echo $key.":".$value."<br>";//循环输出整个数组的值。
?>
实例8:数组和字符串之间转换
<?php
$arr=array('a'=>"你",'b'=>"我","他");
echo $arr=implode('-',$arr);//数组转字符串,连接符-
echo "<br>";
print_r(explode('-',$arr,2));//字符串转数组。如果最后一个参数不用,表示全部'-'都分割成数组
?>
实例9:数组排序
<?php
$arr=array('b'=>"你",'a'=>"我","他");
ksort($arr);//数组按键值的拼音(UTF-8编码)排序,键值不会丢失。注意此排序不返回新数组而是直接把原来数组当引用传递。
print_r($arr);
echo "<br>";
asort($arr);//数组按值的拼音(UTF-8编码)排序,键值不会丢失。如果不要键值,可以用函数sort();如果反序也有函数rsort()。注意此排序不返回新数组而是直接把原来数组当引用传递。
print_r($arr);
echo "<br>";
$arr=array(10000,100,1000);
natsort($arr);//按数字自然排序值,而natcasesort()不区分大小写
print_r($arr);
echo "<br>";
print_r(array_reverse($arr));//数组反序
echo "<br>";
?>
实例10:数组、数字随机抽取、数字和编码转换
<?php
$arr=array('b'=>"你",'a'=>"我","他");
$key=array_rand($arr,2);//数组随机抽取2个键值,返回含两个键值的索引数组
echo $arr[$key[0]].$arr[$key[1]];
echo "<br>";
echo mt_rand(60,100);//返回一个该范围内的随机整数。
echo "<br>";
echo chr(mt_rand(ord('a'),ord('z')));//数字和编码转换。
echo "<br>";
?>
数组的函数就讲完了,我只挑几个有代表性的让大家入门,其实,还有一些不常用的数组函数的。除此之外,我们可以用for或者foreach循环来处理数组,生成自己的my_函数,笨有笨方法。
代码如下:
<?php
$arr=array('a'=>"你",'b'=>"我","他");
$arr[]="其他";
echo $arr['b']."<br>";
$arr['c']="";//给个空值,但仍然占着位置的
echo count($arr)."<br>";//数组有多少个值。
unset($arr['b']);//这函数可以注销字符串、整个数组等值类型和引用类型。
print_r($arr);//这函数打印数值、引用类型的整个内部结构。
echo "<br>";
foreach($arr as $key=>$value)
echo $key.":".$value."<br>";//循环输出整个数组的值。
?>
实例8:数组和字符串之间转换
代码如下:
<?php
$arr=array('a'=>"你",'b'=>"我","他");
echo $arr=implode('-',$arr);//数组转字符串,连接符-
echo "<br>";
print_r(explode('-',$arr,2));//字符串转数组。如果最后一个参数不用,表示全部'-'都分割成数组
?>
实例9:数组排序
代码如下:
<?php
$arr=array('b'=>"你",'a'=>"我","他");
ksort($arr);//数组按键值的拼音(UTF-8编码)排序,键值不会丢失。注意此排序不返回新数组而是直接把原来数组当引用传递。
print_r($arr);
echo "<br>";
asort($arr);//数组按值的拼音(UTF-8编码)排序,键值不会丢失。如果不要键值,可以用函数sort();如果反序也有函数rsort()。注意此排序不返回新数组而是直接把原来数组当引用传递。
print_r($arr);
echo "<br>";
$arr=array(10000,100,1000);
natsort($arr);//按数字自然排序值,而natcasesort()不区分大小写
print_r($arr);
echo "<br>";
print_r(array_reverse($arr));//数组反序
echo "<br>";
?>
实例10:数组、数字随机抽取、数字和编码转换
代码如下:
<?php
$arr=array('b'=>"你",'a'=>"我","他");
$key=array_rand($arr,2);//数组随机抽取2个键值,返回含两个键值的索引数组
echo $arr[$key[0]].$arr[$key[1]];
echo "<br>";
echo mt_rand(60,100);//返回一个该范围内的随机整数。
echo "<br>";
echo chr(mt_rand(ord('a'),ord('z')));//数字和编码转换。
echo "<br>";
?>
数组的函数就讲完了,我只挑几个有代表性的让大家入门,其实,还有一些不常用的数组函数的。除此之外,我们可以用for或者foreach循环来处理数组,生成自己的my_函数,笨有笨方法。
[3]《PHP编程最快明白》第二讲 数字、浮点、布尔型、字符串和数组
来源: 互联网 发布时间: 2013-11-30
数字、浮点、布尔型是值类型,英文:int、float、bool,这样你知道他们怎么用了。
比如语句:$fa=3.14;
字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string、array。
比如:$str=”字符串”;$arr=array(“a”=>”数”,”b”=>”组”);// array()是一个数组赋值函数,这样的函数PHP有一千多个,一般常用的不到200个,我觉得。
字符串操作:
实例2:字符串合并、相加
<?php
$str = 1;
echo $str .= ""; //数字转化为字符串再合并,结果:"1"。
echo "<br>";
echo $str += "1元"; //字符串转化为数字再相加,如"1XXX"转化为数字1,结果: 2。
echo "<br>";
?>
实例3:字符串改变大小写
<?php
$str="12345ABc";
echo strtolower($str);//变小写,结果:"12345abc"。
echo "<br>";
echo strtoupper($str);//变小写,结果:"12345ABC"。
echo "<br>";
?>
实例4:字符串长度、截取子字符串(中英文)
<?php
$str = "字符串2";
echo mb_strlen($str, "UTF-8"); //返回字符串长度的函数,第二个参数是编码,由于页面用UTF-8编码,所以为这样。如果省去,返回内存占用的字节数(ASCII),即10。结果4
echo "<br>";
echo mb_substr($str, 1, 2, "UTF-8"); //返回字符截取,1为从”符”地址开始截取,2为截取2个"UTF-8"编码的字符,结果:“符串”。
echo "<br>";
/**
* 知识点:现在开始接触函数了,每个函数都有()作为堆栈调用,()里面放0个或多个参数,可以自定义可以有默认值。而关键字比如echo是没有()的。
* 很多书用GB2312编码,取长度和子串时很麻烦。下面给大家参考一下不用上面的mb中文字符串扩展库实现原理:
*/
function my_mb_strlen($str, $code = "UTF-8") // 定义一个新函数,$str是必须传入的参数。
{$num= 0;
if ($code == "UTF-8")
{
$str = iconv("UTF-8", "GB2312", $str); //转化为GB2312编码,ord函数返回对应的ASCII值判断每个字节该中文字符是否结束。
for($i = 0;$i < strlen($str);$i++) // 在此strlen($str)返回内存占用的字节数相当于mb_strlen($str)
{
if (ord($str[$i]) > 0xa0)$i++; //$str[$i]对应内存的i字节。如果直接用UTF-8判断会复杂些,因为编码的多样性UTF-8是网页常用编码,utf-8(Unicode)是windows编码。
$num++;
}
}
else
{
$num = "编码未实现";
} //有兴趣的自己查资料吧
return $num;
}
echo my_mb_strlen($str) . ";" . my_mb_strlen($str, "GB2312") . "<br>"; //该页编码用UTF-8,你却说传入的字符串3是GB2312,就算函数实现了也无法正确的。
?>
实例5:子字符串查找、替换
<?php
$str = "字符串4";
echo mb_strpos($str, '串4', 0, "UTF-8"); //查找从0开始找到的第一个子字符串位置,结果:2。如果查找不到,返回空(="");如果最后两个参数不要,返回6。
echo "<br>";
echo mb_strstr($str, '串', 0, "UTF-8"); //截取从0开始找到的第一个子字符串至结尾,结果:"串4"。如果查找不到,返回空(="");如果最后两个参数不要,返回相同=strstr($str,'串')。
echo "<br>";
echo str_replace("4", "不是4", $str) ; //字符串替换,结果: "字符串不是4"。
echo "<br>";
?>
实例6:子字符串去空、html转义
<?php
$str=" 字符串5 ";
echo $str=trim($str);//去除两边空格,结果:"字符串5"。
echo "<br>";
echo "color=\"red\"";//\手工转义里面的'、"、\,使之存储到内存,结果"color="red""
echo "<br>";
$str="<br>123";
echo htmlentities($str) ; //字符串转义<>&'"避免和html标识冲突,使之能在html浏览器端显示出来,结果:"<br>123"。
echo "<br>";
?>
比如语句:$fa=3.14;
字符串和数组是引用类型,也就是说他们作为地址放在栈里,当重新赋值时,栈里的地址改变方向,原来的指向变没或给回收了,英文:string、array。
比如:$str=”字符串”;$arr=array(“a”=>”数”,”b”=>”组”);// array()是一个数组赋值函数,这样的函数PHP有一千多个,一般常用的不到200个,我觉得。
字符串操作:
实例2:字符串合并、相加
代码如下:
<?php
$str = 1;
echo $str .= ""; //数字转化为字符串再合并,结果:"1"。
echo "<br>";
echo $str += "1元"; //字符串转化为数字再相加,如"1XXX"转化为数字1,结果: 2。
echo "<br>";
?>
实例3:字符串改变大小写
代码如下:
<?php
$str="12345ABc";
echo strtolower($str);//变小写,结果:"12345abc"。
echo "<br>";
echo strtoupper($str);//变小写,结果:"12345ABC"。
echo "<br>";
?>
实例4:字符串长度、截取子字符串(中英文)
代码如下:
<?php
$str = "字符串2";
echo mb_strlen($str, "UTF-8"); //返回字符串长度的函数,第二个参数是编码,由于页面用UTF-8编码,所以为这样。如果省去,返回内存占用的字节数(ASCII),即10。结果4
echo "<br>";
echo mb_substr($str, 1, 2, "UTF-8"); //返回字符截取,1为从”符”地址开始截取,2为截取2个"UTF-8"编码的字符,结果:“符串”。
echo "<br>";
/**
* 知识点:现在开始接触函数了,每个函数都有()作为堆栈调用,()里面放0个或多个参数,可以自定义可以有默认值。而关键字比如echo是没有()的。
* 很多书用GB2312编码,取长度和子串时很麻烦。下面给大家参考一下不用上面的mb中文字符串扩展库实现原理:
*/
function my_mb_strlen($str, $code = "UTF-8") // 定义一个新函数,$str是必须传入的参数。
{$num= 0;
if ($code == "UTF-8")
{
$str = iconv("UTF-8", "GB2312", $str); //转化为GB2312编码,ord函数返回对应的ASCII值判断每个字节该中文字符是否结束。
for($i = 0;$i < strlen($str);$i++) // 在此strlen($str)返回内存占用的字节数相当于mb_strlen($str)
{
if (ord($str[$i]) > 0xa0)$i++; //$str[$i]对应内存的i字节。如果直接用UTF-8判断会复杂些,因为编码的多样性UTF-8是网页常用编码,utf-8(Unicode)是windows编码。
$num++;
}
}
else
{
$num = "编码未实现";
} //有兴趣的自己查资料吧
return $num;
}
echo my_mb_strlen($str) . ";" . my_mb_strlen($str, "GB2312") . "<br>"; //该页编码用UTF-8,你却说传入的字符串3是GB2312,就算函数实现了也无法正确的。
?>
实例5:子字符串查找、替换
代码如下:
<?php
$str = "字符串4";
echo mb_strpos($str, '串4', 0, "UTF-8"); //查找从0开始找到的第一个子字符串位置,结果:2。如果查找不到,返回空(="");如果最后两个参数不要,返回6。
echo "<br>";
echo mb_strstr($str, '串', 0, "UTF-8"); //截取从0开始找到的第一个子字符串至结尾,结果:"串4"。如果查找不到,返回空(="");如果最后两个参数不要,返回相同=strstr($str,'串')。
echo "<br>";
echo str_replace("4", "不是4", $str) ; //字符串替换,结果: "字符串不是4"。
echo "<br>";
?>
实例6:子字符串去空、html转义
代码如下:
<?php
$str=" 字符串5 ";
echo $str=trim($str);//去除两边空格,结果:"字符串5"。
echo "<br>";
echo "color=\"red\"";//\手工转义里面的'、"、\,使之存储到内存,结果"color="red""
echo "<br>";
$str="<br>123";
echo htmlentities($str) ; //字符串转义<>&'"避免和html标识冲突,使之能在html浏览器端显示出来,结果:"<br>123"。
echo "<br>";
?>
最新技术文章: