PHP自定义函数返回多个值
微wx笑
2022-02-02【编程语言】
3
0关键字:
php 函数 返回值
PHP自定义函数只允许用return语句返回一个值,当return执行以后,整个函数的运行就会终止。有时要求函数返回多个值时,用return是不可以把值一个接一个地输出的。return语句可以
PHP自定义函数只允许用return语句返回一个值,当return执行以后,整个函数的运行就会终止。
有时要求函数返回多个值时,用return是不可以把值一个接一个地输出的。
return语句可以返回任何类型的变量,这就是使自定义函数返回多个值的关键。
代码:
<?php
function results($string)
{
$result = array();
$result[] = $string;//原字符串
$result[] = strtoupper($string);//全部换成大写
$result[] = strtolower($string);//全部换成小写
$result[] = ucwords($string);//单词的首字母换成大写
return $result;
} www.jbxue.com
$multi_result = results('The quick brown fox jump over the lazy dog');
print_r($multi_result);
?>数组的方式感觉不是很优雅,类或者结构的方式个人感觉更好。
/*
class:Stock
desc:用于getStockPrice方法实现多个返回值
author:ivu4e.com
date:2022-02-02
*/
class Stock{
public $close = 0; //上周五收盘价
public $high = 0; //本周最高价
public $increase = 0; //周最高涨幅
}
/*
获取股票的上周五收盘价和本周最高价
*/
function getStockPrice($code, $beginDate, $endDate){
$sk = new Stock();
$pattern = '/^\d{6}$/';
if (!preg_match($pattern,$code)){
print_r($code . "不是有效的股票代码!<br><br>");
return $sk;
}
$json = getStockJson($code);
$obj = json_decode($json);
for ($i = count($obj->data) - 1; $i >= 0; $i--) {
$skinfo = explode(',', $obj->data[$i]);
if (count($skinfo) != 9){
print_r($code . "文件中的数据不符合预期,不是有效的数据!<br><br>");
break;
}
$stockTime = strtotime($skinfo[0]);
if ($stockTime <= $endDate and $stockTime > $beginDate){
$hh = floatval($skinfo[3]);
if ($hh > $sk->high){
$sk->high = $hh;
}
}
if ($stockTime == $beginDate){
$cs = floatval($skinfo[2]);
$sk->close = $cs;
break;
}
if ($stockTime > $beginDate){
continue;
}
break;
}
return $sk;
}可以简单的创建一个类的实例:$sk = new Stock();
在访问一个变量时需要在前面加$符号,但是在访问类中的公共属性时,就不需要添加$,类似以下的方式:
$sk->close
但是,php访问一个类的属性,不像其它语言那样是通过一个点,而是 -> ,如果php不是自己首先学习的或者主语言的话,是很容易在这上面踩坑的。
本文由 微wx笑 创作,采用 署名-非商业性使用-相同方式共享 4.0 许可协议,转载请附上原文出处链接及本声明。
原文链接:https://www.ivu4e.cn/blog/lang/2022-02-02/1000.html
上一篇:PHP实现今天是星期几的几种写法
下一篇:php的错误级别



