PHP之——函数的使用

php 复制代码
<?php

自定义函数:

将课重复使用的代码用指定函数名的函数封装起来,使用函数名调用,函数名不能重复,函数名不区分大小写, 函数的声明的时候传的参数是形参,没有具体值;当函数调用的使用传递参数,

function 函数名([参数列表]){};

php 复制代码
 function sum(){ echo 3+4; }
  function sum1($a,$b){ 
  echo $a+$b; 
  } 
  sum(); 
  echo '';
   sum1(4,5);
    function mul($a,$b){ 
    return $a*$b;
     } 
     echo '';
      echo mul(3,5);
       echo ''; 

参数可以设置默认值,设置默认值后改参数就变为可选参数,不传使用默认值,传了使用传递的值,所有的默认值参数都要放参数列表的后面

php 复制代码
 function stuinfo($age,$name,$sex='男'){ 
 echo $name.'的年龄为:'.$age.',性别为:'.$sex; 
 } stuinfo(12,'小明','女'); 

//引用赋值

php 复制代码
function sum2(&$a,$b){ $a++; echo $a+$b; } echo ''; 
$a=10; $b=20; 
echo sum1($a,$b); 
echo ''; 
echo $a; 
echo ''; 
echo sum2($a,$b); 
echo '';
 echo $a;
  echo ''; 
  echo '

------------------------
'; 
x=10; $y=20; 
function calc(){ 
global $x,$y;#使用全局变量需要在局部再用global声明一次 
echo $x+$y; }
 function calc1(){
  $x=$GLOBALS['x'];
   $y=$GLOBALS['y']; 
   echo $x+$y; // 局部变量只能在局部使用,在当前作用域外不能使用 
} echo calc(); echo ''; 
echo calc1(); 
echo '

------------------------
';

静态变量:默认函数调用完毕后所有的变量都会自动释放。

如果希望某个变量函数下一次调用时以上一次调用完后的值继续使用,就将改变量声明为静态变量,会保留当前变量不会释放,使用static关键字

php 复制代码
function nums(){
 $i=1; echo $i; 
 echo ''; 
 ++$i; 
} 
nums(); 
nums(); 
nums(); 
nums(); 
echo ''; 
function nums1(){
 static $i=1; 
 echo $i; 
 echo ''; 
 ++$i; 
 } 
 nums1(); 
 nums1(); 
 nums1(); 
 nums1(); 
 echo '
------------------------
'; 
function action(){
 echo '这是可变函数调用结果';
  } //即,调用
  action() 
  $res='action'; 
  $res(); 
  echo '
------------------------
';  //匿名函数 
$sum3=function ($a,$b){ 
return $a+$b; 
}; 
echo $sum3(3,4);
echo '
------------------------
';
 echo strlen('中国'); 
 echo ''; 
 echo strlen('aaa'); 
 echo ''; 

获取指定字符串的位置的下标 获取首次出现的字符下标:

php 复制代码
echo ''.strpos('hellow world','o'); echo ''; 

获取最后一次出现的字符下标:

php 复制代码
echo ''.strrpos('hellow world','o'); echo ''; 

去除指定字符串后数组中的指定字符

str_replace('要被替换的值','替换的值','要被替换的字符串');

使用空格去掉感叹号:

php 复制代码
echo ''.str_replace('!',' ','a!bcd!d'); echo ''; 

使用逗号去掉感叹号:

php 复制代码
echo ''.str_replace('!',',','a!bcd!d'); echo ''; 

字符串截取:

substr(要截取的字符串,起始下标,[截取的长度]);

取指定的字符串:

php 复制代码
 echo ''.substr('abcddfd','2','3'); echo ''; 

去除首位空格:

php 复制代码
echo ''.trim(' a b c '); echo '';

返回事件的秒数:

php 复制代码
echo ''.time(); echo ''; 
echo mktime(12,10,20,5,21,2021); echo '';
echo date('Y-m-d H:s:i',time()); echo '';
print_r(str_split('hellow seaoct rworld',5)); echo ''; 

字符串分割

explode(需要分割的部分,需要分割的字符串,[规定所返回的数组元素的数目])

//大于 0 - 返回包含最多 limit 个元素的数组

//小于 0 - 返回包含除了最后的 -limit 个元素以外的所有元素的数组

//0 - 返回包含一个元素的数组

php 复制代码
print_r(explode(' ','hellow world')); echo ''; 
print_r(explode(' ','hellow world',0)); echo ''; 
print_r(explode(' ','hellow world',-1)); echo '';
print_r(explode(' ','hellow world',1)); echo ''; 
print_r(explode(' ','hellow world',2)); echo ''; 
print_r(explode(' ','hellow world',3));echo ''; 
相关推荐
BingoGo2 小时前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php
JaguarJack2 小时前
OpenSwoole 26.2.0 发布:支持 PHP 8.5、io_uring 后端及协程调试改进
后端·php·服务端
JaguarJack1 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
后端·php·服务端
BingoGo1 天前
推荐 PHP 属性(Attributes) 简洁读取 API 扩展包
php
JaguarJack2 天前
告别 Laravel 缓慢的 Blade!Livewire Blaze 来了,为你的 Laravel 性能提速
后端·php·laravel
郑州光合科技余经理3 天前
代码展示:PHP搭建海外版外卖系统源码解析
java·开发语言·前端·后端·系统架构·uni-app·php
feifeigo1233 天前
matlab画图工具
开发语言·matlab
dustcell.3 天前
haproxy七层代理
java·开发语言·前端
norlan_jame3 天前
C-PHY与D-PHY差异
c语言·开发语言
多恩Stone3 天前
【C++入门扫盲1】C++ 与 Python:类型、编译器/解释器与 CPU 的关系
开发语言·c++·人工智能·python·算法·3d·aigc