<?php
//内置函数
echo rand()."<br/>"; //返回随机整合
echo rand(1000,9999)."<br/>"; //产生一个四位随机数
/*运行结果:
24322
5505
*/
//自定义函数
function sayhello($customer){ //sayhello是函数名,$customer是参数
return $customer.",欢迎您来到 Good Home 酒店~"; //函数具体内容
}
echo sayhello('齐先生')."<br/>"; //调用函数sayhello
/*运行结果:
齐先生,欢迎您来到 Good Home 酒店~
*/
//向函数传递参数值
function RMB($days,$price){ //声明自定义函数
$cost = $days*$price; //算法描述,其中使用参数1,参数2
echo "需要支付的总价:$cost"."元。";
}
$rent_days = 3; //声明全局变量
$price = 168;
RMB($rent_days,$price); //通过变量传递参数
echo "<br/>";
RMB(5,198); //直接传递参数值
echo "<br/>";
/*运行结果:
需要支付的总价:504元。
需要支付的总价:990元。
*/
//向函数传递参数引用
$fee = 300;
$serviceprice = 50;
function totalfee(&$fee,$serviceprice){ //定义函数,参数前多了&,表示按引用传递
$fee = $fee + $serviceprice; //改变形参的值,实参的值也会改变
echo "需要支付的总价:$fee"."元。";
}
totalfee($fee,$serviceprice); //函数外部调用函数前,$fee = 300
totalfee($fee,$serviceprice);
echo "<br/>";
/*运行结果:
需要支付的总价:350元。需要支付的总价:400元。
*/
//从函数中返回值:
function totalneedtopay($days,$roomprice){
return $days*$roomprice; //返回消费总价格
}
$rentdays = 3;
$roomprice = 168;
echo totalneedtopay($rentdays,$roomprice)."<br/>";
/*运行结果:
504
*/
//对函数的引用
//和参数传递不同,在定义和引用函数时,都必须使用&,表明返回的是一个引用
function &example($aa=1){
return $aa; //返回参数,不能连接字符串
}
$bb = &example("引用函数的实例。"); //声明一个函数的引用
echo $bb."<br/>";
/*运行结果:
引用函数的实例。
*/
//对函数取消引用
$num = 166;
$math = &$num; //声明一个对变量$num的引用$math
echo "\$math is:"."$math"."<br/>"; //输出引用$math
unset($math); //取消引用$math 断开变量名和变量内容之间的绑定,此时并没有销毁变量内容
echo "\$num is:".$num."<br/>"; //输出原变量
/*
$math is:166
$num is:166
*/
//包含文件
/* require() 在脚本执行前读入它包含的文件,通常在文件的开头和结尾使用。
include() 在脚本读到它的时候才将包含的文件读进来,通常在流程控制的处理区使用。
文件读取失败时:require将产生致命错误,而include产生一个警告。
include:文件丢失继续运行。 require:停止处理页面。 */
include 'test.php';
echo "$aaa $bbb"; //载入文件后调用两变量
/*运行结果:
杨柳青青江水平 闻郎江上唱歌声
*/