1、php内建函数
基本语法:
{php}
原生PHP代码
{/php}
主要作用:使用{php}标签允许我们在模板页面直接引入php源代码,特别说明:此方法必须使用SmartyBC.class.php文件。
示例代码:
demo06.html模板页面:
2、strip内建函数
基本语法:
{strip}…{/strip}
主要功能:去除任何位于 {strip}{/strip} 标记中数据的首尾空格和回车。这样可以保证模板容易理解且不用担心多余的空格导致问题
本文主要介绍PHP-X内置函数的使用,在PHP扩展开发中,会经常用到这些内置函数,PHP-X的封装,使得调用这些函数像PHP代码一样简单。
在thinkphp中使用MVC编程思维里的模型操作数据库是很方便的一件事情,也非常有利于后期代码的维护,下面小菌为大家介绍如何使用闭包函数在thinkphp模型中操作数据库的增删更查,用闭包函数来操作,既可展示出功能的多样性也可有利于代码维护。
使用助手函数在thinkphp模型中增加数据
$user = model('Data');// 模型对象赋值 $user->data(['name' => 'thinkphpmodel','content' => 'thinkphpmodel']);$user->save();echo $user->name;echo $user->content;echo $user->id; // 获取自增ID
使用闭包函数在thinkphp模型中删除数据
Data::destroy(function($query){$query->where('id','=',0);});
使用闭包函数在thinkphp模型中更新数据
$user = new Data;$user->save(['name' => 'thinkphp65'],function($query){$query->where('status', 0)->where('id', '<', 2); // 更新status值为0 并且id小于2的数据});
使用闭包函数在thinkphp模型中查询批量数据
$user = Data::get(function($query){$query->where('id',41);});echo $user ;//输出是一个object对象
如何使用闭包函数在thinkphp模型中操作数据库的增删更查https://www.qwzyj.com/thread-166-1-1.html
(出处: 全网资源菌)
至此,我们就已经熟悉了如何利用php对mysql数据库进行增删改查的操作,学习了数据库之后,我们来熟悉一些php中常用到的函数,今天我们就来学习php中常用到的数组函数。
1、count函数
count函数是用来计算数组内的元素的数目的一个函数,例子如下:
count($arr);
2、array_chunk函数
array_chunk函数是用来将一个数组拆分为多个数组块的,语法如下:array_chunk(“数组”,每个数组块元素的个数),例子如下:
array_chunk($arr, 2);//将$arr这个数组拆分为多个数组块,每个数组块有两个元素。
3、array_change_key_case函数
这个array_change_key_case函数用于将数组内的所有键都转换为大写或者是小写,格式如下:array_change_key_case(“数组”,case),例子如下:
array_change_key_case($arr,CASE_UPPER);//将$arr这个数组的键都转换为大写,CASE_UPPER表示大写,CASE_LOWER表示转换为小写。
4、array_keys函数
array_keys函数用于取得数组内的所有键值,这是一个非常实用的数组函数,格式很简单:array_keys(数组),例子如下:array_keys($arr);
5、array_pop
array_pop用于删除数组当中的最后一个元素,例子如下:
array_pop($shuzu);//删除$shuzu这个数组内的最后一个元素,删除成功则会返回数组中的最后一个元素,例子如下:
$shuzu=array("nihao","dfd","dfdf");
array_pop($shuzu);
结果将会返回dfdf这个元素。
6、array_unique函数
这个array_unique函数用于删除数组内重复的元素,这个在项目过程中也是经常用到的,格式:array_unique(数组),例子如下:
$shuzu5=array("1","2","4","4","1");
array_unique($shuzu5);
原数组将变成:array("1","2","4");
以上就是关于数组当中常用到的函数的其中一些函数,当然了,在数组中还有很多都是经常用到的,如sort(排序)、array_push(对数组的末尾进行插入元素)、array_sum(返回数组中所有的值的和)、array_rand(从数组中随机抽取一个元素)函数等等等。
php函数,简单理解就是是命名的独立代码段,它执行特定的任务,并给调用的程序返回一个值。函数在面向对象的对象编程中opp中(具体点说是类中)又称为方法。今天为大家介绍一下变量函数和递归函数以及系统自定义函数.
变量函数
变量函数又叫可变函数,php脚本在执行中会寻找与变量的值同名的函数并且去执行它,这样的好处是可以将不同的函数名称赋值给同一个变量,赋给变量那个函数名,在程序中使用变量名加上圆括号就调用那个函数执行。如下所示:
脚本输出结果为:4,one()函数是计算$a和$b的和将函数的函数名不带括号以字符串的方式赋给$result,然后$result变量后加上圆括号传入两个整型参数1和3,就会寻找与变量$result的值同名函数执行,需要注意的是变量函数不能用于语言结构。
递归函数
递归函数又叫自调用函数,执行过程中会调用自己,一般会附加条件判断需要执行递归调用,在一定条件下会终止调用,会把流程控制权交回上一层函数执行,再递归函数中如果没有附加条件程序会无限循环导致出现错误。
递归函数调用最大好处在于可以精简程序中的繁杂重复调用程序,可以利用这一特性执行复杂的运算。非递归函数虽然效率高。但是却比较难编程。而且可读性较差,不符合现在程序设计目标,总而言之鼓励用递归函数实现程序的想法。下图是个简单的递归函数:
执行结果是:543210+012345,它是一层一层执行稍外一层结束时,退到再稍外一层继续执行,层层退出,直到最外层结束。
使用自定义函数
php为我们提供一个庞大的函数库供我们使用,函数库是编程时的一种设计模式,函数是结构化设计的模块。函数可以在同个项目的多个文件中使用,通常将函数组织到一个文件或者多个文件中。这几收集函数定义的文件就是php函数库。如果在php中使用函数库中定义的函数,需要使用include()、include_once()、require或require_once中的一个函数,将函数库文件载入到程序中。
include和require有什么区别?
include和require类似,都是运行指定文件。不同在于include()执行文件时要进行评估和读取:而对于require()文件只处理一次,这就意味着使用require()效率比较高。另一方面如果每次执行代码是读取不同文件,或者有通过一组文件迭代的循环,就使用include()。
require()使用时一般放在php脚本程序最前面。php在执行前会先读取引入的文件,它就变成了php脚本文件一部分。include使用方法也是如此,这样做可以使程序执行流程简单化。另外require()和include()是语言结构不是真正的函数。
1.函数的介绍
说明:函数的作用在于对一个功能的封装,封装后在别的页码中引入并调用,可以节省代码量
语法:
function 函数名 ( [形参1][,形参2][,形参3][,形参4][,形参n]){
要封装的函数的代码;
[return 返回值];
}
2,函数的调用
说明:直接使用需要调用的函数的名即可
语法:
函数名([实参1][,实参2][,实参3][,实参4][,实参n]);
3.函数的相关细节
函数定义时的形参不是一个具体的数值,而是需要接收实参传过来的值,且形参必须是变量形参可以给默认值,且可以是多种数据类型实参就是要给函数传递数据的值。可以是具体的值。也可以是变量。实参必须和形参一一对应函数名遵循变量的定义规则。字母、下划线、数字且不能以数字开头函数名不能重复return返回值,如果写了就会返回当前要返回的值,如果没写默认返回一个1或者nullreturn可以返回多个值,即可以返回一个数组返回值必须使用一个变量到函数的调用者这个位置进行接收可以利用数组传递多个值函数的变量称为局部变量,不能在函数外使用
说明:
2.函数的调用机制
说明:
函数的调用者把实际的数据传递给函数的形参,这时候的形参只能在函数内使用函数在运行代码时会新建一个新的空间来运行函数内的代码运行代码后,如果有返回值,把结果返回给函数调用者,这时候运行的函数新的空间被销毁
图解:
引用传递
说明:有的函数可以直接使用全局变量。这时候是引用传递
案例:
未经允许不得转载:吾爱乐享 php学习之函数的认识及相关细节
案例:创建一个表单,输入任意数字,让其在二进制、十进制、十六进制之间互相转换
1.没有封装前的代码实现
封装的意义在于一次写成多次调用
各进制和其他进制的相互转换函数
decbin():十进制转二进制函数`dechex():十进制转八进制decoct():十进制转十六进制bin2hex():二进制转十六进制bindec():二进制转十进制octdec():八进制转十六进制hexdec():十六进制转十进制
任意进制转换 base_convert() 函数
tring base_convert ( string number, int frombase, int tobase )返回一字符串,包含 number 以 tobase 进制的表示。number 本身的进制由 frombase 指定。frombase 和 tobase 都只能在 2 和 36 之间(包括 2 和 36)。高于十进制的数字用字母 a-z 表示,例如 a 表示 10,b 表示 11 以及 z 表示 35。
2.封装的方式
新建一个输入文件:input.html
新建一个函数库,用来存储函数decbin.php
新建一个change.php调用函数并输出结果
首先,PHP是最好的语言!
下面我们来说下PHP图像处理函数中的gd_info()函数。
PHP函数gd_info() --取得当前安装的 GD 库的信息。
下面我们来实际输出一下(以THINKPHP5.0版本为例):
示例代码返回结果是数组,共有12个序列,下面将一一介绍。
输出结果下面是每个索引的相关描述:
在PHP开发的时候,操作多维数组,比如我们查询数据库返回的数据数组,有些时候我们希望可以像数据库指定返回某一列那样获取数组中某一列的值,有些时候我们希望根据每一行中id的值获取到对应的数据行而不是根据key,但我们不想再去数据库查一遍,能不能直接在数组中像查询数据库一样查询数据,本文教大家如何实现这个效果。
开发工具/浏览器
PHP开发环境(本文使用的是WAMP)
代码编辑器(本文用的是PHPstorm)
谷歌浏览器
步骤/流程
1.首先我们需要创建一个同结构的多维数组用于测试,代码及浏览器运行效果如图
2.要实现我们的效果我们要用到PHP的array_column() 函数,该函数具体说明如图所示
3.使用array_column() 函数,指定第二个参数column_key的值,可以像数据库指定返回列那样返回指定键值的列,代码及浏览器运行效果如图
4.使用array_column() 函数,同时指定第二个参数column_key(指定列1)的值和第三个参数index_key(指定列2)的值, 我们可以按指定格式 [指定列2 => 指定列1] 取出数据,比如 ['id'=>'name'] 格式,代码及浏览器运行效果如图
5.使用array_column() 函数,设置第二个参数column_key的值为null, 设置第三个参数index_key为指定列,我们在数组中可以按指定列返回整行的数据,比如我们可以按ID返回整行的数据,代码及浏览器运行效果如图
6.总结
1).当我们想按数据库查询数据的方式查询数组时
2).使用array_column() 函数,指定第二个参数column_key的值,可以像数据库指定返回列那样返回指定键值的列
3).使用array_column() 函数,同时指定第二个参数column_key(指定列1)的值和第三个参数index_key(指定列2)的值, 我们可以按指定格式 [指定列2 => 指定列1] 取出数据
4).使用array_column() 函数,设置第二个参数column_key的值为null, 设置第三个参数index_key为指定列,我们在数组中可以按指定列返回整行的数据
注意事项
PHP有很多实用的函数是大家以前忽略掉的,本系列的文章会为大家详细介绍所有PHP函数
希望本系列的文章能够给大家带来帮助节省大家解决问题的时间
掌握知识点1,2在上一篇文章已经介绍过了,现在我们从第三个知识点来讲吧!
不仅仅是码农1.Array 函数2.Calendar 函数3.cURL 函数4.Date 函数5.Directory 函数6.Error 函数7.Filesystem 函数8.Filter 函数9.FTP 函数10.HTTP 函数11.LibXML 函数12.Mail 函数13.Math 函数14.Misc 函数15.MySQLi 函数16.SimpleXML 函数17.String 函数18.XML Parser 函数19.Zip 函数
PHP cURL 函数
概述PHP支持的由Daniel Stenberg创建的libcurl库允许你与各种的服务器使用各种类型的协议进行连接和通讯。libcurl目前支持http、https、ftp、gopher、telnet、dict、file和ldap协议。libcurl同时也支持HTTPS认证、HTTP POST、HTTP PUT、 FTP 上传(这个也能通过PHP的FTP扩展完成)、HTTP 基于表单的上传、代理、cookies和用户名+密码的认证。PHP中使用cURL实现Get和Post请求的方法这些函数在PHP 4.0.2中被引入。需求为了使用PHP的cURL函数,你需要安装 libcurl包。PHP需要使用libcurl 7.0.2-beta 或者更高版本。在PHP 4.2.3 里使用cURL,你需要安装7.9.0或更高版本的libcurl。从PHP 4.3.0开始你需要安装7.9.0或更高版本的libcurl。从PHP 5.0.0开始你需要安装7.10.5或更高版本的libcurl。安装要使用PHP的cURL支持你必须在编译PHP时加上--with-curl[=DIR] 选项,DIR为包含lib和include的目录路径。在include目录中必须有一个名为curl,包含了easy.h和curl.h的文件夹。lib文件夹里应该有一个名为libcurl.a的文件。对于PHP 4.3.0你可以配置--with-curlwrappers 使cURL使用URL流。注意: Win32用户注意 要在Windows环境下使用这个模块,libeay32.dll和ssleay32.dll必须放到PATH环境变量包含的目录下。 不用cURL网站上的libcurl.dll。资源类型这个扩展定义了2中资源:cURL句柄和cURL批处理句柄。PHP cURL 函数以下包含了PHP cURL函数列表: