-
php加密算法之实现可逆加密算法和解密分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:73
加密算法如下: 代码如下: function encrypt($data,$key) { $key=md5($key); $x=0; $len=strlen($data); $l=strlen($key); for ($i = 0; $i { if ($x == $l) { $x = 0; } $char .= $key{$x}; $x++; } for ($i = 0; $i { $str .= chr(ord($data{$i}) + (ord($[详细]
-
discuz加密解密函数使用方法和中文注释
所属栏目:[PHP教程] 日期:2020-12-12 热度:166
代码如下: /** * $string 明文或密文 * $operation 加密ENCODE或解密DECODE * $key 密钥 * $expiry 密钥有效期 */ function authcode($string,$operation = 'DECODE',$key = '',$expiry = 0) { // 动态密匙长度,相同的明文会生成不同密文就是依靠动态密匙 /[详细]
-
一组PHP可逆加密解密算法实例代码
所属栏目:[PHP教程] 日期:2020-12-12 热度:52
对于大部分密码加密,我们可以采用md5、sha1等方法。可以有效防止数据泄露,但是这些方法仅适用于无需还原的数据加密。 对于需要还原的信息,则需要采用可逆的加密解密算法。 下面一组PHP函数是实现此加密解密的方法: 加密算法如下: 代码如下: function en[详细]
-
简单的php缓存类分享 php缓存机制
所属栏目:[PHP教程] 日期:2020-12-12 热度:156
代码如下: class Cache { private $dir = "data/cache/";//定义缓存目录 private $key='c_a_sss';// 文件名md5加密密钥function set_dir($dirpath) { $this->dir=$dirpath; $this->make_dir($this->dir); } function read($key,$minutes=1) { $filename=$thi[详细]
-
php判断手机访问还是电脑访问示例分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:51
代码如下: function isMobile(){ $useragent=isset($_SERVER['HTTP_USER_AGENT']) ? $_SERVER['HTTP_USER_AGENT'] : ''; $useragent_commentsblock=preg_match('|(.*?)|',$useragent,$matches)>0?$matches[0]:''; function CheckSubstrs($substrs,$text){[详细]
-
php实现图形显示Ip地址的代码及注释
所属栏目:[PHP教程] 日期:2020-12-12 热度:144
使用图形显示Ip,文件 sunip.php 代码如下: header("Content-type: image/gif"); $im = imagecreate(130,15); $background_color = ImageColorAllocate ($im,255,255); unset($ip); if($_SERVER['HTTP_CLIENT_IP']){ $ip=$_SERVER['HTTP_CLIENT_IP']; } else[详细]
-
php设计模式之单例模式使用示例
所属栏目:[PHP教程] 日期:2020-12-12 热度:173
以下为单例模式代码: 代码如下: class EasyFramework_Easy_Mysql{ protected static $_instance = null; private function __construct(){ } public static function getInstance(){ if (self::$_instance === null){ self::$_instance = new self(); } ret[详细]
-
检查用户名是否已在mysql中存在的php写法
所属栏目:[PHP教程] 日期:2020-12-12 热度:94
在写注册系统时,如果要检查用户名是否存在,php可以这样写: div class="codetitle" a style="CURSOR: pointer" data="58782" class="copybut" id="copybut58782" onclick="doCopy('code58782')" 代码如下: div class="codebody" id="code58782" $username=[详细]
-
php利用新浪接口查询ip获取地理位置示例
所属栏目:[PHP教程] 日期:2020-12-12 热度:86
代码如下: function getIPLoc_sina($queryIP){ $url = 'http://int.dpool.sina.com.cn/iplookup/iplookup.php?format=json $ch = curl_init($url); curl_setopt($ch,CURLOPT_ENCODING,'utf8'); curl_setopt($ch,CURLOPT_TIMEOUT,5); curl_setopt($ch,CURLOPT[详细]
-
php使用qr生成二维码的示例分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:105
代码如下: ini_set('display_errors','on'); $PNG_TEMP_DIR = dirname(__FILE__).DIRECTORY_SEPARATOR.'temp'.DIRECTORY_SEPARATOR; $PNG_WEB_DIR = 'temp/'; include "qrlib.php"; // QRcode lib $data = '//www.jb51.cc'; // data $ecc = 'H'; // L-smalle[详细]
-
php日历制作代码分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:58
代码如下: class Calendar { private $year; //当前的年 private $month; //当前的月 private $start_weekday; //当月的第一天对应的是周几 private $days; //当前月一共多少天 function __construct(){ $this->year=isset($_GET["year"]) ? $_GET["year"] :[详细]
-
利用中国天气预报接口实现简单天气预报
所属栏目:[PHP教程] 日期:2020-12-12 热度:63
代码如下: header("content-type:text/html;charset=utf-8"); $weather = file_get_contents("http://www.weather.com.cn/data/sk/101280601.html"); echo $weather; ?> 代码如下: 天气预报 这里是: , 气温是 , 风向: , 风力:[详细]
-
php fsockopen解决办法 php实现多线程
所属栏目:[PHP教程] 日期:2020-12-12 热度:134
回答: 当有人想要实现并发功能时,他们通常会想到用fork或者spawn threads,但是当他们发现php不支持多线程的时候,大概会转换思路去用一些不够好的语言,比如perl。 其实的是大多数情况下,你大可不必使用fork或者线程,并且你会得到比用fork或thread更好[详细]
-
使用php伪造referer的方法 利用referer防止图片盗链
所属栏目:[PHP教程] 日期:2020-12-12 热度:115
什么是HTTP Referer 简言之,HTTP Referer是header的一部分,当浏览器向web服务器发送请求的时候,一般会带上Referer,告诉服务器我是从哪个页面链接过来的,服务器籍此可以获得一些信息用于处理。比如从我主页上链接到一个朋友那里,他的服务器就能够从HTTP[详细]
-
php解析url的三个示例
所属栏目:[PHP教程] 日期:2020-12-12 热度:146
方法一: 代码如下: $url="http://www.baidu.com"; file_get_contents($url); 方法二: 代码如下: // CURL 方法 $url="http://www.baidu.com"; $ch = curl_init( ); curl_setopt( $ch,CURLOPT_URL,$url ); curl_setopt( $ch,CURLOPT_HEADER,0 ); curl_setopt[详细]
-
php生成缩略图示例代码分享(使用gd库实现)
所属栏目:[PHP教程] 日期:2020-12-12 热度:157
代码如下: header("content-type:text/html;charset=gbk"); ini_set("date.timezone","Asia/chong"); //判断文件是否为空 if(empty($_FILES)){ echo"上传文件过大"; exit; } //判断文件上传是否有错误 if($_FILES['pic']['error']){ echo "上传文件"; exit;[详细]
-
php利用腾讯ip分享计划获取地理位置示例分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:99
代码如下: function getIPLoc_QQ($queryIP){ $url = 'http://ip.qq.com/cgi-bin/searchip?searchip1='.$queryIP; $ch = curl_init($url); curl_setopt($ch,CURLOPT_ENCODING,'gb2312'); curl_setopt($ch,CURLOPT_TIMEOUT,10); curl_setopt($ch,CURLOPT_RETUR[详细]
-
用Zend Studio+PHPnow+Zend Debugger搭建PHP服务器调试环境步骤
所属栏目:[PHP教程] 日期:2020-12-12 热度:90
本人主要是做ASP.NET开发的,但有时候也会接触到PHP,而且我认为PHP有很多源码值得学习,我们不是学习PHP代码的写法,而是学习源码的实现思路,或者免强叫为算法。 作为一名非专业的PHP开发者,想要较方便地读懂并搞清楚一个PHP功能模块的运行细节,搭建一个[详细]
-
php使用base64加密解密图片示例分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:143
代码如下: //文件名:base64.php$data="/9j/4AAQSkZJRgABAQAAAQABAAD/2wCEABALDA4MChAODQ4SERATGCgaGBYWGDEjJR0oOjM9PDkzODdASFxOQERXRTc4UG1RV19iZ2hnPk1xeXBkeFxlZ2MBERISGBUYLxoaL2NCOEJjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2NjY2N[详细]
-
php共享内存段示例分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:174
需要安装扩展shmop 找到php安装源文件目录 代码如下: # cd /usr/local/php-5.4.0/ext/shmop # /usr/local/php/bin/phpize # ./configure --with-php-config=/usr/local/php/bin/php-config # make make install 编译安装成功 代码如下: # cd /usr/local/php/[详细]
-
linux系统下php安装mbstring扩展的二种方法
所属栏目:[PHP教程] 日期:2020-12-12 热度:128
1.执行 代码如下: yum install php-mbstring 2. 修改php.ini (这一步非常重要,部分lxadmin版本无法自动修改) 代码如下: echo ‘extension=mbstring.so' >>/etc/php.ini #更具php安装目录而定 3. 重启web service 如果是apache: service httpd restart 方法二[详细]
-
非常实用的php弹出错误警告函数扩展性强
所属栏目:[PHP教程] 日期:2020-12-12 热度:172
分享一个非常实用,本人一直在用的利用php弹出警告的函数,整理到自己的代码库中去在遇到错误的地方可用到此函数,扩展性强,完整代码如下 div class="codetitle" a style="CURSOR: pointer" data="57085" class="copybut" id="copybut57085" onclick="doCop[详细]
-
php 启动报错如何解决
所属栏目:[PHP教程] 日期:2020-12-12 热度:156
div class="codetitle" a style="CURSOR: pointer" data="17553" class="copybut" id="copybut17553" onclick="doCopy('code17553')" 代码如下: div class="codebody" id="code17553" [root@abc lnmp]# service php-fpm start Starting php-fpm eAccelerator[详细]
-
php根据身份证号码计算年龄的实例代码
所属栏目:[PHP教程] 日期:2020-12-12 热度:157
代码如下: //过了这年的生日才算多了1周岁 if(empty($id)) return ''; $date=strtotime(substr($id,6,8)); //获得出生年月日的时间戳 $today=strtotime('today'); //获得今日的时间戳 $diff=floor(($today-$date)/86400/365); //得到两个日期相差的大体年数[详细]
-
php实现可以设置中奖概率的抽奖程序代码分享
所属栏目:[PHP教程] 日期:2020-12-12 热度:194
div class="jb51code" pre class="brush:php;" ?php /** 抽奖 @param int $total / function getReward($total=1000) { $win1 = floor((0.12 $total)/100); $win2 = floor((3 $total)/100); $win3 = floor((12 $total)/100); $other = $total-$win1-$win2-$w[详细]