好得很程序员自学网
  • 首页
  • 后端语言
    • C#
    • PHP
    • Python
    • java
    • Golang
    • ASP.NET
  • 前端开发
    • Angular
    • react框架
    • LayUi开发
    • javascript
    • HTML与HTML5
    • CSS与CSS3
    • jQuery
    • Bootstrap
    • NodeJS
    • Vue与小程序技术
    • Photoshop
  • 数据库技术
    • MSSQL
    • MYSQL
    • Redis
    • MongoDB
    • Oracle
    • PostgreSQL
    • Sqlite
    • 数据库基础
    • 数据库排错
  • CMS系统
    • HDHCMS
    • WordPress
    • Dedecms
    • PhpCms
    • 帝国CMS
    • ThinkPHP
    • Discuz
    • ZBlog
    • ECSHOP
  • 高手进阶
    • Android技术
    • 正则表达式
    • 数据结构与算法
  • 系统运维
    • Windows
    • apache
    • 服务器排错
    • 网站安全
    • nginx
    • linux系统
    • MacOS
  • 学习教程
    • 前端脚本教程
    • HTML与CSS 教程
    • 脚本语言教程
    • 数据库教程
    • 应用系统教程
  • 新技术
  • 编程导航
    • 区块链
    • IT资讯
    • 设计灵感
    • 建站资源
    • 开发团队
    • 程序社区
    • 图标图库
    • 图形动效
    • IDE环境
    • 在线工具
    • 调试测试
    • Node开发
    • 游戏框架
    • CSS库
    • Jquery插件
    • Js插件
    • Web框架
    • 移动端框架
    • 模块管理
    • 开发社区
    • 在线课堂
    • 框架类库
    • 项目托管
    • 云服务

当前位置:首页>CMS系统>Dedecms
<tfoot draggable='sEl'></tfoot>

php7.1函数 php函数写法

很多站长朋友们都不太清楚php7.1函数,今天小编就来给大家整理php7.1函数,希望对各位有所帮助,具体内容如下:

本文目录一览: 1、 php中content 函数怎么用? 2、 php如何调用函数 3、 php如何定义一个show()函数 4、 PHP对称加密-AES 5、 9个必须知道的实用PHP函数和功能 6、 php函数设定参数类型 php中content 函数怎么用?

PHP 目前没有content这个系统函数,这个函数应该是自定义函数,可以在相关的项目下搜索一下。

名字类似于content的PHP系统函数有 file_get_contents,以及file_put_contents。

PHP 可以自定义函数,比如:

<?php

//my_function为函数的名字,$arg_1,$arg_2为函数的参数,echo $arg_1.$arg_2;为函数的要处理的代码

function my_function($arg_1,$arg_2){

echo $arg_1.$arg_2;

}

?>

函数名和 PHP 中的其它标识符命名规则相同。有效的函数名以字母或下划线打头,后面跟字母,数字或下划线。

php如何调用函数

PHP函数调用与Java/C/C++是一样的额,通过函数名(参数列表)就可以了,

举个栗子:

图中,有两处函数调用,一开始的session_start()是调用的PHP函数,validate_user($username, $password)是用户自定义函数,同样的方式调用。

php如何定义一个show()函数

函数四要素: 返回类型 函数名 参数列表 函数体

function show() { } 最简单的函数定义方式

function Show() {echo "hello";} Show(); 有参数的函数

function show($a) {echo $a;} show("hello"); 有返回值的函数

function show(){return "aaaaa";} echo show(); 有默认值的函数

function show($a="hello"){echo $a;}show("ceshi"); 可变参数的函数

function show(){//var_dump(func_num_args());

func_get_args() 获取参数列表

func_num_args() 获取参数的个数

$attr = func_get_args();

$sum = 0;

for($i=0;$i<count($attr);$i++)

{

$sum = $sum+$attr[$i];

}

return $sum;

} echo show(1,2,3,4);

常用函数

echo rand(0,10); 生成随机数

日期时间

echo time(); 取当前时间,返回Unix时间戳

echo date("Y-m-d H:i:s"); 格式化日期时间

echo strtotime("2016-3-4 12:09:10"); 将字符串转化为时间戳

字符串函数

$a = "hello|world|ni|hao";

echo strlen($a); //取字符串的长度

echo strcmp("Hello",$a); //比较两个字符串,相等返回0,区分大小写

echo strcasecmp("Hello",$a); //比较两个字符串,相等返回0,不区分大小写

echo strtolower("Hello"); //将字符串转小写

echo strtoupper("hello"); //将字符串转大写

var_dump(explode("|",$a)); //拆分字符串,返回数组

$attr = array("aa","bb","cc","dd");

echo implode("%",$attr); //拼接字符串

echo substr_replace($a,"***",0,5); //替换指定位置的字符串

第一个参数是要替换的字符串

第二个参数是替换的字符串

第三个参数是开始位置

第四个参数是替换长度

echo str_replace("|","?",$a); //查找替换

第一个参数是要查找的字符串

第二个参数是要替换的字符串

第三个参数是被操作的字符串

$s = "2016年元旦放假时间安排表";

echo str_replace("元旦","<mark>元旦</mark>",$s);

$str2 = substr($str,9,4);

echo "从第9个字符开始取4个字符:".$str2.

echo substr($a,0,5); //截取指定位置的字符

$s = ""; for($i=0;$i<10;$i++) {$s = $s.$i.",";}

$s = substr($s,0,strlen($s)-1);

echo $s; 关于字符串定义

$a = "test"; $s = "hello{$a}world"; $str = 'helloworld'; echo $str;//区别:

1.单引号不解析转义字符,内容会原样输出

2.单引号不解析变量

$z1 = "p001"; $z2 = "张三"; $z3 = "男"; $z4 = "2000-1-2"; $z5 = "0904";

$sql = "insert into info values('".$z1."','".$z2."','".$z3."','".$z4."','".$z5."')";或

$sql = "insert into info values('{$z1}','{$z2}','{$z3}','{$z4}','{$z5}')";

echo $sql;*/

$s = <<<A

<span style="color:red">你好</span>

A; 后者A必须是在一行顶格

echo $s;

转载于:

原文链接:

点击阅读全文

打开CSDN APP,看更多技术内容

PHP函数参考手册大全

17. 函数 18. 类与对象(PHP 4) 19. 类与对象(PHP 5) 20. 异常处理 21. 引用的解释 IV. 安全 22. 简介 23. 总则 24. 以 CGI 模式安装时 25. 以 Apache 模块安装时 26. 文件系统安全 27. 数据库安全 28. 错误报告 ...

07_php函数

global关键字的使用 在函数里面的变量之前加上global,相当于函数外面的a就是函数里面的a就是函数里面的a,都变成了同一个变量 $a=10; function show(){ global $a; $a++; echo $a; } show(); //11 echo $a; //11 ?>

继续访问

PHP:变量和函数2

** ** ** ** ** ** ** ** **

继续访问

PHP【函数】

目录:【PHP函数】、【PHP数组】 一、PHP常用函数(和JS一样)函数的四要素:①返回类型②函数名③参数类型④函数体因为PHP是弱类型语言,所以可以不用写返回类型,但是其他三个要素都是必须要写的。 1、最简单的函数写法 function show() { echo "hello"; } show(); 2、有返回值的函数就是在函...

继续访问

php函数方法,基于PHP函数的操作方法

如下所示://简单函数function show(){echo "hello";}show();//有参数的函数function show($a){echo "$a";}show("world");//有返回值的函数function show(){return "小V,你好!";}echo show();function show($a,$b){return $a+$b;}echo show(10...

继续访问

PHP函数的定义

函数就是功能。封装一段用于完成特定功能的代码。调用一个函数就是在调用一个功能。 内置函数: PHP函数中有一些内置函数,这些函数是不能随便进行更改的; strtoupper() 和 strtolower()是两个内置的函数,用于对字符串进行大小写转换。 $str = 'ABcd'; $upper = strtoupper($str); // 调用strtoupper()函数将$str转换成大写 ...

继续访问

html按钮调用php函数,如何在html按钮上执行php函数点击

您的按钮是HTML,而您的功能是PHP。他们看起来像在一起,因为他们在同一个文件中,但他们不在一起。 PHP仅在服务器上存在。 HTML仅适用于客户端(浏览器)。当你在浏览器上看到按钮时,PHP就消失了,你只有HTML。要创建一个HTML按钮来调用一个PHP函数,您必须将您的函数移动到一个PHP文件,然后让您的按钮使用Ajax调用它。例如:bb1.html:包含使用Ajax调用PHP函数的按钮。f...

继续访问

php调用方式,php 函数调用的几种方式

// 最常见的函数调用 --- 1function userFunction1($param1, $param2){echo 'UserFunction1: Param1 : ',$param1,' , Param2 : ',$param2,'';}userFunction1('Hello','world');// 最常见的函数调用 --- 2$userFunction2 = function($...

继续访问

在上传文件中常用的PHP函数

注:做完upload上传漏洞后,收集了一些常用的PHP函数 1.

继续访问

热门推荐 php中in array函数_PHP函数in_array()使用详解

PHP有一个系统函数is_array()可以判断一个值是否在数组中。语法如下:in_array(value,array,type)return boolen参数说明:value :要搜索的值array : 被搜索的数组type : 类型,true全等 ,false非全等(默认)示例一:普通使用代码:$str = 1;$arr = array(1,3,5,7,9);$boolvalue = in_a...

继续访问

PHP函数(function)

函数基础 函数的定义: 形式: function 函数名 ( 【$形参1】 【,$形参2】 【,.... 】 ){ //函数体。。。。。。 } 说明: 1,定义时使用的形参,其实就是一个变量——只能在该函数内部使用的变量 2,形参作为变量,其名字是“自己定义”——自然应该遵循命名规范; 函数的调用: 函数名($实参1, $实参2, ..... ); 说明: 1,实参应该...

继续访问

PHP 函数调用

函数调用 函数调用时,实参要按照顺序给形参。 函数调用时,互相独立,默认没有联系。 执行完毕后,返回调用的位置,继续向下执行。 案例 <?php function A(){ echo "This is A fun!<hr />"; } function B(){ echo "Fun B begining<hr />"; A(); echo "Fun B end...

继续访问

PHP 函数 数组引用传参数

<?php function addElement($arr2,$school2) //数组是拷贝传值,数组作形参需要在前面加""符号,表示引用传参数。也可以在函数调用时,在实参前加""符号。 { $arr2[] = $school2; } $arr = array("张三","男",24); $school = "北京理工大学"; addElement($arr,$school)

继续访问

php round函数

php round函数用于对对浮点数进行四舍五入,其语法是round(x,prec),参数x可选,指规定要舍入的数字;prec可选,指规定小数点后的位数。 php round函数怎么用? 定义和用法 round() 函数对浮点数进行四舍五入。 语法 round(x,prec) 参数 x 可选。规定要舍入的数字。 prec 可选。规定小数点后的位数。 说明 返回将 x 根据指定精度 prec (十进...

继续访问

vscode跳转到php函数定义处

转:

继续访问

php函数中static的使用

php中static的定义语句只会被执行一次,但是它的值会被函数记住,直到程序终止 举个栗子: <?php function test() { //这个语句只会在该程序运行的第一次调用生效,但是这个值在函数执行结束后会被该函数记住, //也就是说下次执行到这个函数的,$a是已经存在的且值为上次运行后的值 static $a = 1; //只运行一次 ...

继续访问

最新发布 php的exec函数

新建一个php文件 输入命令执行 发现异常这是因为在php的配置文件中禁止了exec函数的运行,因此需要修改配置文件,使用下列代码找到配置文件 进入配置文件,将exec函数删除 重启php-fpm 然后发现可以正常运行 exec有三个参数,第二个和第三个参数不是必需的。第一个参数是执行的命令,第二个参数存储命令执行的输出,第三个参数返回执行的状态。...

继续访问

前端调用PHP函数的方式

html_entity_decode()<div class="rxzcB fl">{$service.introduction|html_entity_decode}</div>其中的service.introduction是从后端传过来的数据,此处的数据是html格式的,我们在前端希望看到通过浏览器解析过的文档格式,就可以调用PHP函数htmlentitydecode。比如,会将service.

继续访问

php函数-list函数

list()函数作用:将数组的元素变成变量使用 - 1.等号左边是list()函数,右边是索引数组(下标连续的,按0开始); - 2.数组中有几个元素,则list()有几个参数(参数必须是变量不能是值,而且变量是自定义的变量),跟数组的值是一一对应关系; - 3.在list()函数的参数中,空项也代表元素list($a, $b, $c) = ['aa', 'bb', 'cc'];

继续访问

php

PHP对称加密-AES

对称加解密算法中,当前最为安全的是 AES 加密算法(以前应该是是 DES 加密算法),PHP 提供了两个可以用于 AES 加密算法的函数簇: Mcrypt 和 OpenSSL 。

其中 Mcrypt 在 PHP 7.1.0 中被弃用(The Function Mycrypt is Deprecated),在 PHP 7.2.0 中被移除,所以即可起你应该使用 OpenSSL 来实现 AES 的数据加解密。

在一些场景下,我们不能保证两套通信系统都使用了相函数簇去实现加密算法,可能 siteA 使用了最新的 OpenSSL 来实现了 AES 加密,但作为第三方服务的 siteB 可能仍在使用 Mcrypt 算法,这就要求我们必须清楚 Mcrypt 同 OpenSSL 之间的差异,以便保证数据加解密的一致性。

下文中我们将分别使用 Mcrypt 和 OpenSSL 来实现 AES-128/192/256-CBC 加解密,二者同步加解密的要点为:

协同好以上两点,就可以让 Mcrypt 和 OpenSSL 之间一致性的对数据进行加解密。

AES 是当前最为常用的安全对称加密算法,关于对称加密这里就不在阐述了。

AES 有三种算法,主要是对数据块的大小存在区别:

AES-128:需要提供 16 位的密钥 key

AES-192:需要提供 24 位的密钥 key

AES-256:需要提供 32 位的密钥 key

AES 是按数据块大小(128/192/256)对待加密内容进行分块处理的,会经常出现最后一段数据长度不足的场景,这时就需要填充数据长度到加密算法对应的数据块大小。

主要的填充算法有填充 NUL("0") 和 PKCS7,Mcrypt 默认使用的 NUL("0") 填充算法,当前已不被推荐,OpenSSL 则默认模式使用 PKCS7 对数据进行填充并对加密后的数据进行了 base64encode 编码,所以建议开发中使用 PKCS7 对待加密数据进行填充,已保证通用性(alipay sdk 中虽然使用了 Mcrypt 加密簇,但使用 PKCS7 算法对数据进行了填充,这样在一定程度上亲和了 OpenSSL 加密算法)。

Mcrypt 的默认填充算法。NUL 即为 Ascii 表的编号为 0 的元素,即空元素,转移字符是 "\0",PHP 的 pack 打包函数在 'a' 模式下就是以 NUL 字符对内容进行填充的,当然,使用 "\0" 手动拼接也是可以的。

OpenSSL的默认填充算法。下面我们给出 PKCS7 填充算法 PHP 的实现:

默认使用 NUL("\0") 自动对待加密数据进行填充以对齐加密算法数据块长度。

获取 mcrypt 支持的算法,这里我们只关注 AES 算法。

注意:mcrypt 虽然支持 AES 三种算法,但除 MCRYPT_RIJNDAEL_128 外, MCRYPT_RIJNDAEL_192/256 并未遵循 AES-192/256 标准进行加解密的算法,即如果你同其他系统通信(java/.net),使用 MCRYPT_RIJNDAEL_192/256 可能无法被其他严格按照 AES-192/256 标准的系统正确的数据解密。官方文档页面中也有人在 User Contributed Notes 中提及。这里给出如何使用 mcrpyt 做标注的 AES-128/192/256 加解密

即算法统一使用 MCRYPT_RIJNDAEL_128 ,并通过 key 的位数 来选定是以何种 AES 标准做的加密,iv 是建议添加且建议固定为16位(OpenSSL的 AES加密 iv 始终为 16 位,便于统一对齐),mode 选用的 CBC 模式。

mcrypt 在对数据进行加密处理时,如果发现数据长度与使用的加密算法的数据块长度未对齐,则会自动使用 "\0" 对待加密数据进行填充,但 "\0" 填充模式已不再被推荐,为了与其他系统有更好的兼容性,建议大家手动对数据进行 PKCS7 填充。

openssl 簇加密方法更为简单明确,mcrypt 还要将加密算法分为 cipher + mode 去指定,openssl 则只需要直接指定 method 为 AES-128-CBC,AES-192-CBC,AES-256-CBC 即可。且提供了三种数据处理模式,即 默认模式 0 / OPENSSL_RAW_DATA / OPENSSL_ZERO_PADDING 。

openssl 默认的数据填充方式是 PKCS7,为兼容 mcrpty 也提供处理 "0" 填充的数据的模式,具体为下:

options 参数即为重要,它是兼容 mcrpty 算法的关键:

options = 0 : 默认模式,自动对明文进行 pkcs7 padding,且数据做 base64 编码处理。

options = 1 : OPENSSL_RAW_DATA,自动对明文进行 pkcs7 padding, 且数据未经 base64 编码处理。

options = 2 : OPENSSL_ZERO_PADDING,要求待加密的数据长度已按 "0" 填充与加密算法数据块长度对齐,即同 mcrpty 默认填充的方式一致,且对数据做 base64 编码处理。注意,此模式下 openssl 要求待加密数据已按 "0" 填充好,其并不会自动帮你填充数据,如果未填充对齐,则会报错。

故可以得出 mcrpty簇 与 openssl簇 的兼容条件如下:

建议将源码复制到本地运行,根据运行结果更好理解。

1.二者使用的何种填充算法。

2.二者对数据是否有 base64 编码要求。

3.mcrypt 需固定使用 MCRYPT_RIJNDAEL_128,并通过调整 key 的长度 16, 24,32 来实现 ase-128/192/256 加密算法。

9个必须知道的实用PHP函数和功能

即使使用 PHP 多年 也会偶然发现一些未曾了解的函数和功能 其中有些是非常有用的 但没有得到充分利用 并不是所有人都会从头到尾一页一页地阅读手册和函数参考!

任意参数数目的函数

你可能已经知道 PHP 允许定义可选参数的函数 但也有完全允许任意数目的函数参数的方法 以下是可选参数的例子

以下为引用的内容

// function with optional arguments function foo($arg = $arg = ) {

echo "arg : $arg n";  echo "arg : $arg n";

}

foo( hello world ); /* prints: arg : hello arg : world */

foo(); /* prints: arg : arg : */

现在让我们看看如何建立能够接受任何参数数目的函数 这一次需要使用 func_get_args() 函数

以下为引用的内容

// yes the argument list can be empty function foo() {

// returns an array of all passed arguments  $args = func_get_args();

foreach ($args as $k => $v) {   echo "arg" ($k+ ) ": $vn";  }

}

foo(); /* prints nothing */

foo( hello ); /* prints arg : hello */

foo( hello world again ); /* prints arg : hello arg : world arg : again */

使用 Glob() 查找文件

许多 PHP 函数具有长描述性的名称 然而可能会很难说出 glob() 函数能做的事情 除非你已经通过多次使用并熟悉了它 可以把它看作是比 scandir() 函数更强大的版本 可以按照某种模式搜索文件

以下为引用的内容

// get all php files $files = glob( * php );

print_r($files); /* output looks like: Array (     [ ] => phptest php     [ ] => pi php     [ ] => post_output php     [ ] => test php ) */

你可以像这样获得多个文件

以下为引用的内容

// get all php files AND txt files $files = glob( * {php txt} GLOB_BRACE);

lishixinzhi/Article/program/PHP/201311/21182

php函数设定参数类型

php 函数的参数类型可以指定为类名或数组类型array,比如

这样是对的public function Right( My_Class $a, array $b )

这样是错的public function Wrong( string $a, boolean $b )

如果需要其他类型,需要在函数内部进行类型检查

参考

这一段

public function Right( My_Class $a, array $b )

tells first argument have to by object of My_Class, second an array. My_Class means that you can pass also object of class that either extends My_Class or implements (if My_Class is abstract class) My_Class. If you need exactly My_Class you need to either make it final, or add some code to check what $a really.

Also note, that (unfortunately) "array" is the only built-in type you can use in signature. Any other types i.e.:

public function Wrong( string $a, boolean $b )

will cause an error, because PHP will complain that $a is not an *object* of class string (and $b is not an object of class boolean).

So if you need to know if $a is a string or $b bool, you need to write some code in your function body and i.e. throw exception if you detect type mismatch (or you can try to cast if it's doable).

关于php7.1函数的介绍到此就结束了,不知道本篇文章是否对您有帮助呢?如果你还想了解更多此类信息,记得收藏关注本站,我们会不定期更新哦。

查看更多关于php7.1函数 php函数写法的详细内容...

声明:本文来自网络,不代表【好得很程序员自学网】立场,转载请注明出处:http://www.haodehen.cn/did168663
更新时间:2023-04-11   阅读:29次

上一篇: 关于kuduphp的信息

下一篇:php文件命名 php的命名空间详解

相关资讯

最新资料更新

  • 1.dedecms批量替换文章中超链接的方法
  • 2.dedecms5.7联动类型无法显示的解决方法
  • 3.织梦Dedecms在循环列表中获取会员信息的方法
  • 4.dedecms arclist中截取字符串的2种方法
  • 5.织梦(dedecms)导航条dropdown.js的改进(附演示demo)
  • 6.DEDE模板中如何运行php脚本和变量在需要操作数据库字段时
  • 7.织梦DedeCMS [field:highlight/]标签详解(小结)
  • 8.DedeCMS系统301重定向配置方法详解
  • 9.dedecms常用sql语句汇总
  • 10.DEDECMS系统分页标签自定义二次开发实例
  • 11.浅析DedeCMS投票模块漏洞的解决方法
  • 12.dede给dede_sys_enum添加字段father示例
  • 13.详解织梦模板DedeCms获取缩略图的高度和宽度的代码
  • 14.DEDECMS实现文章tag关键词自动生成列表页的方法
  • 15.织梦DedeCMS在实现中英文导航功能方法步骤
  • 16.DedeCms后台登录一片空白的解决方法
  • 17.dedecms织梦自定义文件名之用拼音或英文标题的方法
  • 18.浅析DedeCMS GBK版安装sphinx全文索引无法查询无结果的解决方法
  • 19.dedecms v5.7提示php.ini register_globals must is Off
  • 20.dede搬家后路径变化批量替换图片路径避免图片不能正常显示

CopyRight:2016-2025好得很程序员自学网 备案ICP:湘ICP备09009000号-16 http://www.haodehen.cn
本站资讯不构成任何建议,仅限于个人分享,参考须谨慎!
本网站对有关资料所引致的错误、不确或遗漏,概不负任何法律责任。
本网站刊载的所有内容(包括但不仅限文字、图片、LOGO、音频、视频、软件、程序等)版权归原作者所有。任何单位或个人认为本网站中的内容可能涉嫌侵犯其知识产权或存在不实内容时,请及时通知本站,予以删除。

网站内容来源于网络分享,如有侵权发邮箱到:kenbest@126.com,收到邮件我们会即时下线处理。
网站框架支持:HDHCMS   51LA统计 百度统计
Copyright © 2018-2025 「好得很程序员自学网」
[ SiteMap ]