php加密

phper必须了解的php常识

☆樱花仙子☆ 提交于 2020-04-06 11:52:46
PHP,是英文超级文本预处理语言Hypertext Preprocessor的缩写。PHP 是一种 HTML 内嵌式的语言,是一种在服务器端执行的嵌入HTML文档的 脚本语言 ,语言的风格有类似于 C语言 ,被广泛的运用。PHP的另一个含义是:菲律宾比索的标准符号。 功能   PHP 独特的语法混合了 C、Java、Perl 以及 PHP 自创新的语法。它可以比 CGI 或者 Perl 更快速的执行 动态网页 。用PHP做出的 动态页面 与其他的编程语言相比,PHP是将程序嵌入到HTML文档中去执行,执行效率比完全生成HTML标记的CGI要高许多;PHP还可以执行编译后代码,编译可以达到加密和优化代码运行,使代码运行更快。PHP具有非常强大的功能,所有的CGI的功能PHP都能实现,而且支持几乎所有流行的数据库以及操作系统。    发展      PHP 最初是1994年Rasmus Lerdorf创建的,刚刚开始只是一个简单的用Perl语言编写的程序,用来统计他自己网站的访问者。后来又用C语言重新编写,包括可以访问数据库。在1995年以Personal Home Page Tools (PHP Tools) 开始对外发表第一个版本,Lerdorf写了一些介绍此程序的文档,并且发布了PHP1.0。在这早期的版本中,提供了访客留言本、访客计数器等简单的功能

php学习第二章:字符串处理函数(二)字符串查找、替换、截取等

两盒软妹~` 提交于 2020-03-31 21:45:04
1、字符串比较   (1)strcmp($str1,$str2) //比较两个字符串是否相等,当结果为0时表示相等,为1时表示第一个字符串大于第二个字符串,为-1是第一个字符串小于第二个字符串(这是大于和小于只是位置上的比较,在ascii码表中后面的字符大于前面的字符)     1 /** 2 * strcmp($str1, $str2) 比较两个字符串是否相等 3 * @param string $str1 第一个字符串 4 * @param string $str2 第二个字符串 5 */ 6 $str1 = 'hell'; 7 $str2 = 'ello'; 8 var_dump(strcmp($str1, $str2)); //输出1,因为两个字符串的首字母不同,比较首字母,h的位置在e后面,所以h比e大   (2)strncmp($str1, $str2, $length); //比较两个字符串截取指定长度的子串 1 /** 2 * strncmp($str, $str2, $len) 比较两个字符串从开头到指定长度的子串 3 * @param string $str1 第一个字符串 4 * @param string $str2 第二个字符串 5 * @param int $len 要截取的开头 6 */ 7 $str3 = 'my pleasure!'; 8

php的基础知识(一)

情到浓时终转凉″ 提交于 2020-03-29 02:49:36
php(超文本预处理器)定义:   php(外文名:php:Hertext Preprocessor,中文名:“超文本预处理器”)是一种通用的开源脚本语言。语法吸收了C语言、Java和Perl的特点,利于学习,使用广泛,主要适用于Web开发领域。php独特的语法混合了C,Java,Perl以及php自创的语法。它可以比CGI或者Perl更快速的执行动态网页。用php做出的动态网页与其他的编程语言时相比,php是将程序嵌入到HTML(标准通用标记语言下的一个应用)文档中去执行,执行效率比完全生成html标记的CGI要高许多;php还可以执行编译后代码,编译后可以达到加密和优化代码运行,使代码运行更快。 1、PHP的使用: ·php 能够生成动态页面内容。 ·php 能够创建、打开、读取、写入、删除、以及关闭服务器上的文件。 ·php 能够接受表单数据。 ·php 能够发送并取回cookies。 ·php 能够添加、删除、修改数据库中的数据。 ·php 能够限制用户访问网页中的某些页面。 ·php 能够对数据进行加密。 2、php文件: ·php文件以.php结尾 ·可以用短标签风格   注意:必须通过php.ini这个配置文件去修改一项:   short_open_tag = on   切记你修改完配置文件以后必须重启你的服务

PHP安装OPENSSL扩展模块

試著忘記壹切 提交于 2020-03-28 20:26:04
新项目上线时,PHP开发同事反映邮件功能不能正常使用。 原来是用465的SMTP加密端口,不是25端口。那要为当前的PHP安装OPENSSL扩展啦。 还好,网上有很多,弄一个过来就搞定。 http://www.52jscn.com/web/2013/05/4592.shtml 我简单直接的yum install openssl openssl-devel 最后,KILL -USR2 php-fpmid # 下载到/var/www/php5目录下 cd /var/www/php5 wget http://mirrors.sohu.com/php/php-5.2.14.tar.gz # 解压 tar zxvf php-5.2.14.tar.gz # 进入PHP的openssl扩展模块目录 cd php-5.2.14/ext/openssl/ /var/www/php5/bin/phpize # 这里为你自己的phpize路径,如果找不到,使用whereis phpize查找 # 执行后,发现错误 无法找到config.m4 ,config0.m4就是config.m4。直接重命名 mv config0.m4 config.m4 /var/www/php5/bin/phpize ./configure --with-openssl --with-php-config=/var/www

利用php的mcrypt模块加密解密(AES、DES等等)

岁酱吖の 提交于 2020-03-28 02:44:47
php des加密: $cipher_list = mcrypt_list_algorithms();//mcrypt支持的加密算法列表 $mode_list = mcrypt_list_modes();//mcrypt支持的加密模式列表 // print_r($cipher_list); // print_r($mode_list); function encrypt($key,$data){ $td = mcrypt_module_open("des", "", "ecb", "");//使用MCRYPT_DES算法,ecb模式 $size = mcrypt_enc_get_iv_size($td); //设置初始向量的大小 $iv = mcrypt_create_iv($size,MCRYPT_RAND); //创建初始向量 $key_size = mcrypt_enc_get_key_size($td); //返回所支持的最大的密钥长度(以字节计算) $salt = ''; $subkey = substr(md5(md5($key).$salt), 0,$key_size);//对key复杂处理,并设置长度 mcrypt_generic_init($td, $subkey, $iv); $endata = mcrypt_generic($td, $data);

php字符串函数

时光总嘲笑我的痴心妄想 提交于 2020-03-27 15:22:03
字符串常用函数 获取字符串长度函数 /* * strlen函数 * int strlen($var) * 获取字符串或数字的长度 */ $a = 'hello, woRld'; $b = '王昭'; //utf8格式下,每个汉字3个字节长 $c = 1111; echo strlen($a),"\n", strlen($b), strlen($c), "\n"; 大小写转换函数 /* * string strtolower(string $str):字符串所有的字母转换为小写 * string strtoupper(string $str):字符串所有的字母转换为大写 * * string ucfirst(string $str):将字符串的首字母大写,其他字母不变 * string ucwords(string $str):将字符串中每个单词的首字母大写,其他字母不变 * */ $a = 'hello, world zhanGsan'; echo strtolower($a), "\n"; echo strtoupper($a), "\n"; echo ucfirst($a), "\n"; echo ucwords($a), "\n"; 字符串替换函数 //字符串替换函数 /* * str_replace($search, $replace, $str):实现字符串替换

php整理

自闭症网瘾萝莉.ら 提交于 2020-03-27 14:58:16
1. include 和 require 的区别 加载失败的处理方式不同。引入不存在的文件时, include 会产生警告且脚本还会继续执行, require 则会导致一个致命性错误且脚本停止执行。 文件引用方式不同。 include() 执行时需要引用的文件每次都进行执行,并且可以有返回值, require() 只是单纯的文件替换,没有返回值 require 一般放在 PHP 文件的最前面,程序在执行前会先倒入所需要引用的文件; include 一般放在程序的控制流程中,当程序执行时碰到才会引用,简化程序的执行流程。 2.常用关键字 final :用于声明方法和类,修饰类时,该类不能被继承,修饰方法时,该方法不能被覆盖。 static :主要用来修饰成员变量以及成员方法,分别为静态变量和静态方法,通过类直接调用。 global :主要使用于函数内声明变量为全局变量,在函数内部可以使用外部变量。 global 声明的变量只是全局变量的一个同名引用, $GLOBALS 是全局变量本身。 this 、 self 、 parent : this 是指向当前对象的指针, self 是指向当前类的指针, parent 是指向当前父类的指针。 Trait :是为 PHP 的单继承语言而准备的一种代码复用机制。Trait 为了减少单继承语言的限制

一次与sql注入 & webshell 的美丽“邂逅”

情到浓时终转凉″ 提交于 2020-03-26 00:12:05
引言  一波未平,一波又起。金融公司的业务实在是太引人耳目,何况我们公司的业处正处于风口之上(区块链金融),并且每天有大量现金交易,所以不知道有多少 躲在暗处一直在盯着你的系统,让你防不胜防,并且想方设法的找到突破点,以达到 的目的来获取非法利益。 俗话说:“道高一尺,魔高一丈”。系统和代码也可以这么理解,防的在好,总有漏洞。系统和代码也没有绝对的安全。该来的总会来...... sql注入与“她”相遇 某一天,天气晴朗,心情舒畅。“她”来了,打破了笔者的美好时光。下午2点多钟,笔者和朋友在苏州街的天使汇二楼极客咖啡参加某个云厂商的Kubernetes一场技术沙龙,正听得兴致勃勃的时候,笔者的公司群里有个php开发突然帖出一张图:  这个时候,群里翻腾了。没错,被SQL注入了,数据库的表被注入了字段,并且经检查后,发现这个库中的大部分表都被注入了这个字段。我的电脑没带在身边,真是着急,马上跟总监说明问题严重性。由于我电脑不在身边, 只能把数据库账号授权(读写权限)给那个php开发,让他检查所有的表,把被注入的字段删除掉。并查看数据和其它表有没有被修改。好在发现急时,数据和业务都没有被丢失和损坏。  这里我要说明一下,我们的业务都在阿里云,项目是以php为主,并且开通了waf防火墙,只是waf上的防护措施比较宽松。笔者在安全方面的经验也比较欠缺,好在开通了阿里云的WAF

使用百度翻译的API接口

…衆ロ難τιáo~ 提交于 2020-03-24 10:59:09
http://api.fanyi.baidu.com/api/trans/product/desktop 这是申请的接口地址,会得到一个APPID和一个钥密 然后下载PHP的对应的代码 有一个PHP文件,把这两个静态变量的值改一下就可以用了 用的话,只要使用一下这个方法就OK了,$from是要翻译的语言类型,中国当然是中文 $to是要翻译成什么语言,技术文档上都有语言对应的英文 $query就是翻译的话 方法返回的是一个Json类型的数据 echo($arr["trans_result"][0]["dst"]); 直接就得到了翻译后的了 可以仔细看看那些加密的方法,跟技术文档上面的要求是不是一样的 来源: https://www.cnblogs.com/wlphp/p/8406983.html

PHP 常用函数

二次信任 提交于 2020-03-19 11:22:12
变量: var_dump($val) 、 print_r($val) //打印变量 serialize($val)、unserialize($val)//用于序列化对象或数组,并返回一个字符串 类型转换: (int),(bool),(float),(string),( array ),(object)($val); $b=(int)$ a; //把$a转换为整形 intval (), floatval (); strval () $b= intval ($ a);//获取$a中整形数值 类型 判断: empty() / isset() / unset() // isset函数用于检测变量为非null值; empty判断是否为"空",其中 空字符串、0、false都为真; is_bool /int/float/string/ array /object/resource/null() is_numberic();’ //判断是否为任何类型的数字或者数组字符串 is_callable (); //判断是否为有效函数名称 eg:is_int ($val); //判断 b是否为整形,返回bool值 字符串函数: strlen($str);//返回字符串长度 mb_strlen($str) 可以返回中文字符长度; strtolower($str);//字母转小写 strtoupper(