php Undefined variable和 Undefined index

 更新时间:2016年11月25日 17:40  点击:2186

出现这种问题是变量未定义了,我们只要把加个验证如

$a =isset($_get['aa'])?$_get['aa']:'变量未定义';

这样未定义变量也不会出现undefined variable和 undefined index
提供哦,同时我们还提供在php ini或在php中设置错误不提示的方法


解决方法:
1) error_reporting设置:
找到error_reporting = e_all
修改为error_reporting = e_all & ~e_notice

2) register_globals设置:
找到register_globals = off
修改为register_globals = on

开始时经常会碰到如下提示

warning: session_start() [function.session-start]: cannot send session cache limiter - headers already sent (output started at e:php教程www.111cn.netadmin.php:1) in e:phpwww.111cn.netlogolistadminlogo.php on line 2

这是提供session前面己经有输出了,我们只要把session_start()放在最前面,同时最了为避免出错提供可以在前面加@,如@session_start();这样就可以了。

同时也可以在php.ini中修改session.auto_start = 0 为 session.auto_start = 1

就可以了。

 

resource curl_init ([ string $url = null ] )

修改配置:
1.修改php教程.ini,将;extension=php_curl.dll前面的分号去掉
2.拷贝libeay32.dll、ssleay32.dll(c:apps教程ervphp5)两个文件到system32目录
3.重启apache(services.msc)即可

<?php
echo "curl - function test <br>" ;
if ($load == 1){
function webcheck ($url) {
        $ch = curl_init ($url) ;
        curl_setopt ($ch, curlopt_returntransfer, 1) ;
        $res = curl_exec ($ch) ;
        curl_close ($ch) ;
        return ($res) ;
}
echo "url = $url <br>" ;

$erg = webcheck("my_page.php/test_1.php") ;
$zahl = strlen ($erg) ;
echo "length = $zahl " ;
?>

如果你在使用过程出现fatal error: call to undefined function curl_init(),试着做如下操作

你看看php的phpinfo()中有没有curl扩展支持!

把php_curl.dll拷到c:windows和c:windowssystem32里面 重启apache
之后再试试看

不是php_curl.dll这个文件
是把php目录中的libeay32.dll,ssleay32.dll拷到c:windowssystem32里面 重启apache
更多详细内容请查看:http://www.111cn.net/phper/31/83bccb7f05107b9ba65c22ce4dae1bf8.htm

网上很多如何进行 301重定向的教程,无论是整站重定向还是单页重定向。下面就以我的www.111cn.net为例,因为很多时候你没有独立的服务器或你的apache不支持.haccess文件等原因,你不得不利用脚本语言来实例301重定向了。

1.1 无www域名转移到www域名
复制代码 代码如下:

rewriteengine on
rewritecond %{http_host} ^111cn.net [nc]
rewriterule ^(.*)$ http://www.111cn.net/$1 [r=301,nc]

1.2 整站301重定向
复制代码 代码如下:

options +followsymlinks
rewriteengine on
rewritecond %{http_host} ^111cn.net [nc]
rewriterule ^(.*)$ http://www.111cn.net/$1 [l,r=301]
rewritecond %{http_host} ^www.111cn.net [nc]
rewriterule ^(.*)$ http://111cn.net/$1 [l,r=301]

另外一种是在根目录下的index.php教程里这样弄
复制代码 代码如下:

header(“http/1.1 301 moved permanently”);
header(“location:http://111cn.net/”);
exit();

2、asp教程主机301重定向
在 index.asp 或 default.asp 的最顶部加入以下几行:
代码如下:
复制代码 代码如下:

<%
response.status=”301 moved permanently”
response.addheader “location”,”www.111cn.net ”
response.end
%>

3、asp.net教程主机301重定向
asp .net:

response.status = “301 moved permanently”;
response.addheader(”location”,"http://www.111cn.net");
}


我封装在一个类里:
复制代码 代码如下:

using system;
using system.collections.generic;
using system.text;
using system.web.ui;
using system.web.ui.htmlcontrols;
namespace classlib
{
public class urlclass
{
private bool flag301 = false;//是否启动 301
private bool isindex = false;//是否 返回主页 或者保留在当前页
/// <summary>
/// 构造函数
/// </summary>
/// <param name="fl">是否启动 301</param>
/// <param name="page">page</param>
/// <param name="strurl">格式www.xxx.com</param>
public urlclass(bool fl, page page, string strurl)
{
flag301 = fl;
url301(page, strurl);
}
/// <summary>
/// 返回主页
/// </summary>
/// <param name="page"></param>
/// <param name="strurl">格式www.xxx.com</param>
public void url301(page page, string strurl)
{
//301重定向
if (page.request.url.dnssafehost != strurl && flag301 == true)
{
page.response.clear();
page.response.statuscode = 301;
page.response.status = "301 movedpermanently";
page.response.addheader("location", "http://" + strurl);
page.response.end();
}
}
}
}

4 php的301重定向
复制代码 代码如下:

header('http/1.1 301 moved permanently');//发出301头部
header('location: http://www.'.$strdomain.$request_uri);//跳转到我的新域名地址

我用301.inc.php文件写了301代码,在其他文件头部都引用上 就可以了
复制代码 代码如下:

<?php
//-----------------------------------
//301 重定向
$strdomain="chinawecan.com";
$the_host = $_server['http_host']; //取得进入所输入的域名
$request_uri = isset($_server['request_uri']) ? $_server['request_uri'] : '';//判断地址后面部分
if($the_host !== 'www.'.$strdomain) //这是我要以前的域名
{
/*“!==”是不完全等于的意思,也可以用“!=”不等于,这样,就可以将以前的域名,
包括gcxirang.com、www.gcxirang.com以及新域名中我gcidc.net全部重定向到www.gcidc.net*/
header('http/1.1 301 moved permanently');//发出301头部
header('location: http://www.'.$strdomain.$request_uri);//跳转到我的新域名地址
}
//----------------------------------
?>

引用如下:
复制代码 代码如下:

<?php
//-----------------------------------
//301 重定向
include('include/301.inc.php');
?>

5 jsp教程的301重定向
如一页面article.jsp
[code]
<%@ page language="java" contenttype="text/html; charset=utf-8" pageencoding="utf-8"%>
<%
response.setstatus(https教程ervletresponse.sc_moved_permanently);
response.setheader("location","/other.jsp");
return;
%>

中文字符判断是根据字符串编码来的,/^[chr(0xa1)-chr(0xff)]+$这就是判断是否为中文的php验证正则表达式下面来看一个验证中文实例

$str = "一聚教程网";
if (preg_match("/^[".chr(0xa1)."-".chr(0xff)."]+$/", $str)) {
echo "这是一个纯中文字符串";
} else {
echo "这不是一个纯中文字串";
}

js

var str = "php编程";
if (/^[u4e00-u9fa5]+$/.test(str)) {
alert("该字符串全部是中文");
} else {
alert("该字符串不全部是中文");
}

php

if($en_utf8)
{    $joid = preg_replace("[^0-9a-za-z_-|x4e00-x9fa5|:|/|#|.]","",$joid);             }   //utf-8的中文匹配
else
{    $joid = preg_replace("[^0-9a-za-z_-|".chr(0xa1)."-".chr(0xff)."|:|/|#|.]","",$joid);   }   //gb2312的中文匹配


php中来判断字符串是否为中文,就会沿袭这个思路:

<?php
$str = "php编程";
if (preg_match("/^[u4e00-u9fa5]+$/",$str)) {
print("该字符串全部是中文");
} else {
print("该字符串不全部是中文");
}
?>

 

[!--infotagslink--]

相关文章

  • 解决springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹的问题

    这篇文章主要介绍了解决springboot使用logback日志出现LOG_PATH_IS_UNDEFINED文件夹的问题,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧...2021-04-28
  • 源码分析系列之json_encode()如何转化一个对象

    这篇文章主要介绍了源码分析系列之json_encode()如何转化一个对象,对json_encode()感兴趣的同学,可以参考下...2021-04-22
  • php中去除文字内容中所有html代码

    PHP去除html、css样式、js格式的方法很多,但发现,它们基本都有一个弊端:空格往往清除不了 经过不断的研究,最终找到了一个理想的去除html包括空格css样式、js 的PHP函数。...2013-08-02
  • index.php怎么打开?如何打开index.php?

    index.php怎么打开?初学者可能不知道如何打开index.php,不会的同学可以参考一下本篇教程 打开编辑:右键->打开方式->经文本方式打开打开运行:首先你要有个支持运行PH...2017-07-06
  • PHP中func_get_args(),func_get_arg(),func_num_args()的区别

    复制代码 代码如下:<?php function jb51(){ print_r(func_get_args()); echo "<br>"; echo func_get_arg(1); echo "<br>"; echo func_num_args(); } jb51("www","j...2013-10-04
  • PHP编程 SSO详细介绍及简单实例

    这篇文章主要介绍了PHP编程 SSO详细介绍及简单实例的相关资料,这里介绍了三种模式跨子域单点登陆、完全跨单点域登陆、站群共享身份认证,需要的朋友可以参考下...2017-01-25
  • PHP实现创建以太坊钱包转账等功能

    这篇文章主要介绍了PHP实现创建以太坊钱包转账等功能,对以太坊感兴趣的同学,可以参考下...2021-04-20
  • php微信公众账号开发之五个坑(二)

    这篇文章主要为大家详细介绍了php微信公众账号开发之五个坑,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2016-10-02
  • 解决jquery插件:TypeError:$.browser is undefined报错的方法

    首先先说一说$.browser browser就是用来获取浏览器基本信息的。 jQuery 从 1.9 版开始,移除了 $.browser 和 $.browser.version , 取而代之的是 $.support 。 在更新的 2.0 版本中,将不再支持 IE 6/7/8。 以后,如果用户需...2015-11-24
  • PHP如何通过date() 函数格式化显示时间

    这篇文章主要介绍了PHP如何通过date() 函数格式化显示时间,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-11-13
  • ThinkPHP使用心得分享-ThinkPHP + Ajax 实现2级联动下拉菜单

    首先是数据库的设计。分类表叫cate.我做的是分类数据的二级联动,数据需要的字段有:id,name(中文名),pid(父id). 父id的设置: 若数据没有上一级,则父id为0,若有上级,则父id为上一级的id。数据库有内容后,就可以开始写代码,进...2014-05-31
  • golang与php实现计算两个经纬度之间距离的方法

    这篇文章主要介绍了golang与php实现计算两个经纬度之间距离的方法,结合实例形式对比分析了Go语言与php进行经纬度计算的相关数学运算技巧,需要的朋友可以参考下...2016-07-29
  • PHP正则表达式过滤html标签属性(DEMO)

    这篇文章主要介绍了PHP正则表达式过滤html标签属性的相关内容,实用性非常,感兴趣的朋友参考下吧...2016-05-06
  • Webpack打包css后z-index被重新计算的解决方法

    这篇文章主要跟大家分享了Webpack打包css后z-index被重新计算的解决方法,文中介绍的非常详细,对大家具有一定的参考学习价值,需要的朋友们下面跟着小编一起来学习学习吧。...2017-06-24
  • php构造方法中析构方法在继承中的表现

    这篇文章主要为大家详细介绍了php构造方法中析构方法在继承中的表现,感兴趣的小伙伴们可以参考一下...2016-04-15
  • react为什么不推荐使用index作为key

    本文主要介绍了react为什么不推荐使用index作为key,文中通过示例代码介绍的非常详细,具有一定的参考价值,感兴趣的小伙伴们可以参考一下...2021-07-22
  • thinkPHP中多维数组的遍历方法

    这篇文章主要介绍了thinkPHP中多维数组的遍历方法,以简单实例形式分析了thinkPHP中foreach语句的使用技巧,需要的朋友可以参考下...2016-01-12
  • PHP如何使用cURL实现Get和Post请求

    这篇文章主要介绍了PHP如何使用cURL实现Get和Post请求,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下...2020-07-11
  • 详解c#索引(Index)和范围(Range)

    这篇文章主要介绍了c#索引(Index)和范围(Range)的相关资料,帮助大家更好的理解和学习c#,感兴趣的朋友可以了解下...2020-12-08
  • PHP+jQuery+Ajax实现多图片上传效果

    今天我给大家分享的是在不刷新页面的前提下,使用PHP+jQuery+Ajax实现多图片上传的效果。用户只需要点击选择要上传的图片,然后图片自动上传到服务器上并展示在页面上。...2015-03-15