php cookies 删除,赋值方法

 更新时间:2016年11月25日 17:10  点击:1366

php教程 cookies 删除,赋值方法

cookie 常用于识别用户。cookie 是服务器留在用户计算机中的小文件。每当相同的计算机通过浏览器请求页面时,它同时会发送 cookie。通过 php,您能够创建并取回 cookie 的值

语法

setcookie(name, value, expire, path, domain);

**
  * 设置cookie
   * n 名称
   * c 值
   * e 有效期 0 默认 一个月 1 关闭立即失效
   */
 

function w_cookie($n, $c, $e = 0,$isdes=1)
 {
   if($isdes==1){$c=endes($c,deskey);}
      $exp = time() + 3600 * 24 * 30;
      if($e == 0)
     {
          setcookie($n, $c, $exp,"/");
     }
     else
     {
      setcookie($n, $c,0,"/");
      }
 }


 
 //关闭cookie方法
 

 

w_cookie('bb', 'www.111cn.net', $e = 0,$isdes=1);


更多详细内容请查看:http://www.111cn.net/phper/php/34040.htm

更详细的方法

 

<?php
function set_cronology($name,$value,$duration=7){
$duration=time()+(3600*24*$duration);
$max_stored_values=5;
if(isset($_cookie[$name])){
foreach($_cookie[$name] as $prop_crono=>$val_crono){
if($val_crono==$value)
return;
}
if($prop_crono<$max_stored_values)
setcookie($name.'['.($prop_crono+1).']',$value,$duration);
else{
array_shift($_cookie[$name]);
setcookie("$name[$max_stored_values]",$value,$duration);
}
}else
setcookie($name.'[0]',$value,$duration);
return;
}
?>

注释:setcookie() 函数必须位于 <html> 标签之前。在发送 cookie 时,cookie 的值会自动进行 url 编码,在取回时进行自动解码(为防止 url 编码,请使用 setrawcookie() 取而代之)。

php教程中$_get要获取表单的数据那必须把METHOD=GET才行,否则就无法正常获取值哦,

$_GET 变量是一个数组,内容是由 HTTP GET 方法发送的变量名称和值。

$_GET 变量用于收集来自 method="get" 的表单中的值。从带有 GET 方法的表单发送的信息,对任何人都是可见的(会显示在浏览器的地址栏),并且对发送的信息量也有限制(最多 100 个字符)。


看个获取表单数据的实例

<INPUT TYPE="image" NAME="submit_one" SRC="b.gif">
<INPUT TYPE="image" NAME="submit_two" SRC="b2.gif">


//Properly determining which submission button was clicked in PHP:

<?php
     if(isset($_GET['submit_one_x'])) {

     } elseif(isset($_GET['submit_two_x'])) {
     } else {

     }
?>

实例二

<?
<FORM ACTION="index.php" METHOD=GET>
<INPUT TYPE="hidden" NAME="time" VALUE="<?php echo time(); ?>">
Enter your message (5 minute time limit):<INPUT TYPE="text" NAME="mytext" VALUE="">
<INPUT TYPE="submit" Value="Send Data">
</FORM>

if($_GET['time']+300 >= time()) {
     echo "You took too long!<BR>";
     exit;
}
?>

操作select值

<SELECT NAME="myselect[]" MULTIPLE SIZE=3>
<OPTION VALUE="value1">A</OPTION>
<OPTION VALUE="value2">B</OPTION>
<OPTION VALUE="value3">C</OPTION>
<OPTION VALUE="value4">D</OPTION>
</SELECT>


//The PHP code to access which value(s) were selected:

<?php
     foreach($_GET['myselect'] as $val) {
          echo "You selected: $val<BR>";
     }
     echo "You selected ".count($_GET['myselect'])." Values.";
?>

获取表单提交的数据再输出,这也是个完整的实例

<html>
<head>
<title>A Simple HTML Form</title>
</head>
<body>
<div>
<form action="index.php" method="get">
<p><input type="text" name="user" /></p>
<p><textarea name="address" rows="5" cols="40">
</textarea></p>
<p><input type="submit" value="hit it!" /></p>
</form>
</div>
</body>
</html>


// index.php
<html>
<body>
<div>
 <?php
  print "Welcome <b>" . $_GET ['user'] . "</b><br/>nn";
  print "Your address is: <br/><b>" . $_GET ['address'] . "</b>";
  ?>
 </div>
</body>
</html>

注释:在使用 $_GET 变量时,所有的变量名和值都会显示在 URL 中。所以在发送密码或其他敏感信息时,不应该使用这个方法。不过,正因为变量显示在 URL 中,因此可以在收藏夹中收藏该页面。在某些情况下,这是很有用的。

注释:HTTP GET 方法不适合大型的变量值;值是不能超过 100 个字符的

 

下面方法很简单,我们只要把$tmppath里面所有的以http://开的网站全部去了,


$picpath =preg_replace("/[a-za-z]+://[^ |/|s]*/",'',$tmppath);//去掉网址部分

这个正则表达式是获取字符串中所有的以src src不区分大小的获取所有图片的地址出来,并且保存在$tmpdata[2]中。
 preg_match_all("/src=["|'|s|s]([^|/|>]*){0,}(([^>]*).(gif|jpg|png))/isu",$body,$tmpdata);

$picspath =array_unique($tmpdata[2]);//body中所有图片的地址

php教程 ini_get错误设置方法

利用ini_set可以快速的修改php.ini配置设置哦,无需打开php.ini就可以了,特别是虚拟主机时你没有修改php.ini的权限时就会发现这个函数的作用了,下面看几个实例吧。
*/
//ini_set具有更改php.ini设置的功能。此函数接收两个参数:需要调整的配置变量名,以及变量的新值。

更多详细内容请查看:http://www.111cn.net/phper/php-function/34292.htm

<?php
 error_reporting(e_all);    //1.指定错误报告,错误类型为全部
 
 //ini_set("error_reporting",e_all);    //临时改变配置文件的值
 //ini_get("upload_max_filesize");    //获取配置文件的值
 
 ini_set("display_errors","off");    //2.关闭配置文件中的显示错误
 ini_set("log_errors","on");    //3.开启错误日志功能
 ini_set("error_log","c:/error.log");    //4.指定错误文件(可写)
 
 error_log("this is a error message!!!!");    //输出错误信息
 
?>


错误处理
 1.语法错误
    2.运行时的错误
    3.逻辑错误
   
错误报告:
 错误:e_error
    警告:e_warning
    注意:e_notice
   
建议:
 开发阶段:开发是输出所有的错误报告,有利于调试程序
    运行阶段:不要让程序输出任何一种错误报告

将多个数组合并起来
1.合并数组
array_merge()函数将数组合并到一起,返回一个联合的数组。所得到的数组以第一个输入数组参数开始,按后面数组参数出现的顺序依次迫加。其形式为:


view sourceprint?1 array array_merge (array array1 array2…,arrayn)


 

将一个或多个数组的单元合并起来,一个数组中的值附加在前一个数组的后面。返回作为结果的数组。
如果输入的数组中有相同的字符串键名,则该键名后面的值将覆盖前一个值。然而,如果数组包含数字键名,后面的值将不会覆盖原来的值,而是附加到后面。
如果只给了一个数组并且该数组是数字索引的,则键名会以连续方式重新索引。
实例如下:


view sourceprint?1 $face = array("j","q","k","a"); 

2 $numbered = array("2","3","4","5","6","7","8","9"); 

3 $cards = array_merge($face, $numbered); 

4 shuffle($cards); 

5 print_r($cards);


 

这将返回如下所示的结果,运行代码:


view sourceprint?array ( [0] => a [1] => 4 [2] => 9 [3] => 3 [4] => k [5] => 7 [6] => 5 [7] => q [8] => 6 [9] => 8 [10] => 2 [11] => j )


 

 

2.递归追加数组
array_merge_recursive()函数与array_merge()相同,可以将两个或多个数组合并在一起,形成一个联合的数组.两者之间的区别在于,当某个输入数组中的某个键己经存在于结果数组中时该函数会采取不同的处理方式.array_merge()会覆盖前面存在的键/值对,替换为当前输入数组中的键/值对,而array_merge_recursive()将把两个值合并在一起,形成一个新的数组,并以原有的键作为数组名。还有一个数组合并的形式,就是递归追加数组。其形式为:


view sourceprint?array array_merge_recursive( array key,array values )


 

示例如下:


view sourceprint?1 $class1 = array("john" => 100, "james" => 85); 

2 $class2 = array("micky" => 78, "john" => 45); 

3 $classscores = array_merge_recursive($class1, $class2); 

4 print_r($classscores);


 

这将返回如下结果:


view sourceprint?array ( [john] => array ( [0] => 100 [1] => 45 ) [james] => 85 [micky] => 78 )


 

 

3.连接两个数组
array_combine()函数会得到一个新数组,它由一组提交的键和对应的值组成。其形式为:


view sourceprint?array array_merge(array array1,array array2[…,array arrayn])


 

注意,两个输入数组必须大小相同,不能为空。示例如下:


view sourceprint?1 $abbreviations = array("al","ak","az","ar"); 

2 $states = array("alabama","alaska","arizona","arkansas"); 

3 $statemap = array_combine($abbreviations,$states); 

4 print_r($statemap);


 

这会返回:


view sourceprint?1 array ( [al] => alabama [ak] => alaska [az] => arizona [ar] => arkansas )

[!--infotagslink--]

相关文章

  • phpems SQL注入(cookies)分析研究

    PHPEMS(PHP Exam Management System)在线模拟考试系统基于PHP+Mysql开发,主要用于搭建模拟考试平台,支持多种题型和展现方式,是国内首款支持题冒题和自动评分与教师评分相...2016-11-25
  • php读取zip文件(删除文件,提取文件,增加文件)实例

    下面小编来给大家演示几个php操作zip文件的实例,我们可以读取zip包中指定文件与删除zip包中指定文件,下面来给大这介绍一下。 从zip压缩文件中提取文件 代...2016-11-25
  • php 中file_get_contents超时问题的解决方法

    file_get_contents超时我知道最多的原因就是你机器访问远程机器过慢,导致php脚本超时了,但也有其它很多原因,下面我来总结file_get_contents超时问题的解决方法总结。...2016-11-25
  • php抓取网站图片并保存的实现方法

    php如何实现抓取网页图片,相较于手动的粘贴复制,使用小程序要方便快捷多了,喜欢编程的人总会喜欢制作一些简单有用的小软件,最近就参考了网上一个php抓取图片代码,封装了一个php远程抓取图片的类,测试了一下,效果还不错分享...2015-10-30
  • HTTP 408错误是什么 HTTP 408错误解决方法

    相信很多站长都遇到过这样一个问题,访问页面时出现408错误,下面一聚教程网将为大家介绍408错误出现的原因以及408错误的解决办法。 HTTP 408错误出现原因: HTT...2017-01-22
  • Android子控件超出父控件的范围显示出来方法

    下面我们来看一篇关于Android子控件超出父控件的范围显示出来方法,希望这篇文章能够帮助到各位朋友,有碰到此问题的朋友可以进来看看哦。 <RelativeLayout xmlns:an...2016-10-02
  • ps把文字背景变透明的操作方法

    ps软件是现在非常受大家喜欢的一款软件,有着非常不错的使用功能。这次文章就给大家介绍下ps把文字背景变透明的操作方法,喜欢的一起来看看。 1、使用Photoshop软件...2017-07-06
  • Mysql select语句设置默认值的方法

    1.在没有设置默认值的情况下: 复制代码 代码如下:SELECT userinfo.id, user_name, role, adm_regionid, region_name , create_timeFROM userinfoLEFT JOIN region ON userinfo.adm_regionid = region.id 结果:...2014-05-31
  • intellij idea快速查看当前类中的所有方法(推荐)

    这篇文章主要介绍了intellij idea快速查看当前类中的所有方法,本文通过实例代码给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下...2020-09-02
  • 删除条目时弹出的确认对话框

    复制代码 代码如下: <td> <a href="/member/life/edit_ppt/<?php echo $v->id;?>" class="btn">编辑</a> <a href="javascript:;" onclick="if(confirm('您确定删除这条记录?')){location.href='/member/life/d...2014-06-07
  • js导出table数据到excel即导出为EXCEL文档的方法

    复制代码 代码如下: <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml"> <head> <meta ht...2013-10-13
  • mysql 批量更新与批量更新多条记录的不同值实现方法

    批量更新mysql更新语句很简单,更新一条数据的某个字段,一般这样写:复制代码 代码如下:UPDATE mytable SET myfield = 'value' WHERE other_field = 'other_value';如果更新同一字段为同一个值,mysql也很简单,修改下where即...2013-10-04
  • ps怎么制作倒影 ps设计倒影的方法

    ps软件是一款非常不错的图片处理软件,有着非常不错的使用效果。这次文章要给大家介绍的是ps怎么制作倒影,一起来看看设计倒影的方法。 用ps怎么做倒影最终效果&#819...2017-07-06
  • js基础知识(公有方法、私有方法、特权方法)

    本文涉及的主题虽然很基础,在许多人看来属于小伎俩,但在JavaScript基础知识中属于一个综合性的话题。这里会涉及到对象属性的封装、原型、构造函数、闭包以及立即执行表达式等知识。公有方法 公有方法就是能被外部访问...2015-11-08
  • 安卓手机wifi打不开修复教程,安卓手机wifi打不开解决方法

    手机wifi打不开?让小编来告诉你如何解决。还不知道的朋友快来看看。 手机wifi是现在生活中最常用的手机功能,但是遇到手机wifi打不开的情况该怎么办呢?如果手机wifi...2016-12-21
  • PHP 验证码不显示只有一个小红叉的解决方法

    最近想自学PHP ,做了个验证码,但不知道怎么搞的,总出现一个如下图的小红叉,但验证码就是显示不出来,原因如下 未修改之前,出现如下错误; (1)修改步骤如下,原因如下,原因是apache权限没开, (2)点击打开php.int., 搜索extension=ph...2013-10-04
  • c#中分割字符串的几种方法

    单个字符分割 string s="abcdeabcdeabcde"; string[] sArray=s.Split('c'); foreach(string i in sArray) Console.WriteLine(i.ToString()); 输出下面的结果: ab de...2020-06-25
  • js控制页面控件隐藏显示的两种方法介绍

    javascript控制页面控件隐藏显示的两种方法,方法的不同之处在于控件隐藏后是否还在页面上占位 方法一: 复制代码 代码如下: document.all["panelsms"].style.visibility="hidden"; document.all["panelsms"].style.visi...2013-10-13
  • JS使用cookie实现DIV提示框只显示一次的方法

    本文实例讲述了JS使用cookie实现DIV提示框只显示一次的方法。分享给大家供大家参考,具体如下:这里运用JavaScript的cookie技术,控制网页上的提示DIV只显示一次,也就是当用户是第一次打开网页的时候才显示,第二次自动隐藏起...2015-11-08
  • 连接MySql速度慢的解决方法(skip-name-resolve)

    最近在Linux服务器上安装MySql5后,本地使用客户端连MySql速度超慢,本地程序连接也超慢。 解决方法:在配置文件my.cnf的[mysqld]下加入skip-name-resolve。原因是默认安装的MySql开启了DNS的反向解析。如果禁用的话就不能...2015-10-21