Fatal error: Call to undefined function curl_init

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

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

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

$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

网上很多如何进行 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("该字符串不全部是中文");
}
?>

 

当你需要从utf8转换一些数据,cp1251(窗- 1251)或cp1251到utf8你必须使用系统功能的iconv。常见的主机服务商不允许使用此功能。
*/
function cp1251_to_utf8($s){
           $c209 = chr(209); $c208 = chr(208); $c129 = chr(129);
           for($i=0; $i<strlen($s); $i++)    {
               $c=ord($s[$i]);
               if ($c>=192 and $c<=239) $t.=$c208.chr($c-48);
               elseif ($c>239) $t.=$c209.chr($c-112);
               elseif ($c==184) $t.=$c209.$c209;
               elseif ($c==168)    $t.=$c208.$c129;
               else $t.=$s[$i];
           }
           return $t;
       }

        function utf8_to_cp1251($s)
        {
            for ($c=0;$c<strlen($s);$c++)
            {
               $i=ord($s[$c]);
               if ($i<=127) $out.=$s[$c];
                   if ($byte2){
                       $new_c2=($c1&3)*64+($i&63);
                       $new_c1=($c1>>2)&5;
                       $new_i=$new_c1*256+$new_c2;
                   if ($new_i==1025){
                       $out_i=168;
                   } else {
                       if ($new_i==1105){
                           $out_i=184;
                       } else {
                           $out_i=$new_i-848;
                       }
                   }
                   $out.=chr($out_i);
                   $byte2=false;
                   }
               if (($i>>5)==6) {
                   $c1=$i;
                   $byte2=true;
               }
            }
            return $out;
        }

[!--infotagslink--]

相关文章