首页 > 编程技术 > php

Deprecated: Function set_magic_quotes_runtime() is deprecated

发布时间:2016-11-25 17:38

     今天在把php升级之后运行一个页面出现了Deprecated: Function set_magic_quotes_runtime() is deprecated in F:\\wwwroot\\mongodb\\manage\\app.php on line 13错误,后来百度了才知道原因高版本的php把set_magic_quotes_runtime去了,下面我来看解决办法。

官方提供的解决办法:

 代码如下复制代码
//把
 
set_magic_quotes_runtime(0);
 
//替代成
 
ini_set("magic_quotes_runtime",0);

 
即可解析了。
 

有些朋友在使用mysql连接时会出现No such file or directory错误提示,下面我来总结解决办法。

连接代码

 代码如下复制代码

$this->linkid = @mysql_pconnect($host, $user, $password) or die(mysql_error());


Make a phpinfo() page.  Look for ‘mysql.default_socket‘, ‘mysqli.default_socket‘, and

‘pdo_mysql.default_socket‘.  Remember their value; this is where PHP is trying to connect to MySQL.

解决办法

1.首先确定是mysql_connect()和mysql_pconnect()的问题,故障现象就是函数返回空,而mysql_error()返回“No

such file or directory”。
2.写个phpinfo页面,找到mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket。
3.启动mysql,执行命令 STATUS; 记下UNIX socket的值。
4.如果2和3的值不一样,则打开php.ini(可以从phpinfo页面中找到php.ini的位置,默认是/private/etc/php.ini)

,将2中提到的三个配置项的值改成3的值。
5.重启apache。

在php中如果你是配置安装一般默认情况下是不支持curl系列函数的,如果你想让你的php环境支持curl函数,我们可参考下面方法来解决。

修改你的php配置,把php.ini中的;extension=php_curl.dll中的分号去掉;


然后重启apache测试看可不可以,一般情况是没问题了,如果还是不行我们可

1、将PHP文件夹下的三个文件

php_curl.dll,

libeay32.dll,

ssleay32.dll

复制到system32下;


3、重启apache。

测试

 代码如下复制代码

<?php
$ch = curl_init();
curl_setopt($ch,CURLOPT_URL,&rdquo;http://www.111cn.net&rdquo;);
curl_setopt($ch,CURLOPT_HEADER,1);
curl_exec($ch);
curl_close($ch);
?>

这样就成功了哦。

本文章来介绍UTF8编码页面存入GBK数据时使用iconv遇到无法转码的字符时中断内容丢失及解决方法,有碰到此类问题的同学可参考。

关于iconv遇到无法转码的字符时中断内容丢失

 代码如下复制代码

$c = &lsquo;测试&bull;字符传换&bull;五一快乐!&rsquo;;

echo iconv(&lsquo;utf-8&prime;, &lsquo;gbk&rsquo;,$c);

只会输出: 测试

后出全会丢失.

解决方法:

加 //IGNORE

 代码如下复制代码

$c = &lsquo;测试&bull;字符传换&bull;五一快乐!&rsquo;;

echo iconv(&lsquo;utf-8&prime;, &lsquo;gbk//IGNORE&rsquo;,$c);

输入出:测试字符传换五一快乐!

ignore的意思是忽略转换时的错误,如果没有ignore参数,所有该字符后面的字符串都无法被保存。
这样就可以进行同

本文章来转一篇关于新浪微博PHP版SDK的导致20007错误的解决方法,碰到此类问题的朋友可参考。

新浪微博有个高级接口&rsquo;statuses/upload_url_text&rsquo;(需要在open.weibo.com中额外申请)。

传递一个图片URL地址和文本内容,就可以发一条图文微博

对应在php版SDK的function如下:

 代码如下复制代码
?   /**
 * 指定一个图片URL地址抓取后上传并同时发布一条新微博
 *
 * 对应API:{@link http://open.weibo.com/wiki/2/statuses/upload_url_text statuses/upload_url_text}
 *
 * @param string $status  要发布的微博文本内容,内容不超过140个汉字。
 * @param string $url    图片的URL地址,必须以http开头。
 * @return array
 */
function upload_url_text( $status,  $url )
{
    $params = array();
    $params['status'] = $status;
    $params['url'] = $url;
    return $this->oauth->post( 'statuses/upload', $params, true );
}

调用api的处有明显的错误:$this->oauth->post( 'statuses/upload', $params, true );

(一方面应该请求:statuses/upload_url_text,另外一方面第三个参数错误)

以致会出现:20007错误(20007:does multipart has image ?)

改成这样就ok了:

 代码如下复制代码

?   /**
 * 指定一个图片URL地址抓取后上传并同时发布一条新微博
 *
 * 对应API:{@link http://open.weibo.com/wiki/2/statuses/upload_url_text statuses/upload_url_text}
 *
 * @param string $status  要发布的微博文本内容,内容不超过140个汉字。
 * @param string $url    图片的URL地址,必须以http开头。
 * @return array
 */
function upload_url_text( $status,  $url )
{
    $params = array();
    $params['status'] = $status;
    $params['url'] = $url;
    return $this->oauth->post( 'statuses/upload_url_text', $params, false);
}

标签:[!--infotagslink--]

您可能感兴趣的文章: