php函数 返回值

<?phpfunctionlongdate($timestamp){returndate("lFjSY",$timestamp);}echolongdate(time()... <?php
function longdate($timestamp)
{
return date("l F jS Y", $timestamp);
}
echo longdate(time());
?>
本人是菜鸟,零基础学php,有上面这样一段代码。
问题1:返回值不是说是计算后的结果吗,为什么这里可以不用任何计算直接在中括号内用return呢?
问题2:有个口诀是“返回函数名”为什么这里return后面又有一堆不知道什么来的东西呢?
问题3:echo后面time里外都有括弧是什么意思呢?

麻烦啦~小弟感激不尽
展开
 我来答
百度网友690c81e14
2013-10-11 · TA获得超过635个赞
知道小有建树答主
回答量:680
采纳率:0%
帮助的人:667万
展开全部
return date("l F jS Y", $timestamp);

是先运行date函数,然后把date函数的返回值做为此函数的返回值,date是系统函数,你可以百度一下它的原型
同理
echo longdate(time());

是先运行time(),把它的返回值做为参数赋给longdate,最后输出longdate的返回值
更多追问追答
追问
请问可以不返回吗?就是说函数是不是一定要求返回的?那内置函数好像又没有返回的?
还有就是见到echo "",又见过直接的有什么区别呢?
谢谢
追答
函数可以没有返回值,没有问题
这里面用到的两个系统函数date()和time()都是有返回值的
PHP标签内的部分要影响页面必须使用输出方法echo,print之类的
PHP标签外的部分是要原样发送到浏览器的
阳光上的桥
2013-10-11 · 知道合伙人软件行家
阳光上的桥
知道合伙人软件行家
采纳数:21423 获赞数:65813
网盘是个好东东,可以对话和传文件

向TA提问 私信TA
展开全部
问题1:返回值不是说是计算后的结果吗,为什么这里可以不用任何计算直接在中括号内用return呢?
不用任何计算也是计算,你的例子中是函数计算,计算函数date的结果,是一定形式的日期字符串,然后再返回这个字符串(Friday October 11th 2013)。

问题2:有个口诀是“返回函数名”为什么这里return后面又有一堆不知道什么来的东西呢?
返回的是一个数值,return后面无论是什么,都可以计算出一个结果,只把结果(Friday October 11th 2013)作为返回,

问题3:echo后面time里外都有括弧是什么意思呢?
time()表示函数time的结果,函数都要有括号,没有任何参数的时候使用一对空的括号。
追问
请问可以不返回吗?就是说函数是不是一定要求返回的?那内置函数好像又没有返回的?
还有就是见到echo "",又见过直接的有什么区别呢?
谢谢
本回答被网友采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
fdhpdy
2013-10-11 · TA获得超过229个赞
知道答主
回答量:209
采纳率:0%
帮助的人:129万
展开全部
oh,my god!
问题1:return就是返回值,不必非要是计算后的结果。return后面可以是空(没有返回值),可以是变量(返回变量的值),可以是表达式(返回表达式运算的结果)
问题2:return后面跟了一堆叫表达式的东西,表达式是一个内置函数,此函数运算的结果是日期格式的数据
问题3:time()也是一个内置函数,其结果作为自定义函数longdate的参数参与运算,再将longdate的结果打印出来
追问
请问可以不返回吗?就是说函数是不是一定要求返回的?那内置函数好像又没有返回的?
还有就是见到echo "",又见过直接的有什么区别呢?
谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百krfh
2013-10-11 · TA获得超过160个赞
知道小有建树答主
回答量:199
采纳率:0%
帮助的人:172万
展开全部
1、不是,该函数没有用到计算,只是将特定时间戳转换成特定格式的结果.

2、return 后面可以是任何内容。data()是php 的一个内置函数,主要是时间格式转换功能

3、time() 是 php 的一个内置函数,返回当前服务器的时间戳(一个有10位数子组成的字符串),longdate()是一个自定义函数调用时给了一个参数就是time()的返回值,最后将longdate() 的返回值进程输出
追问
请问可以不返回吗?就是说函数是不是一定要求返回的?那内置函数好像又没有返回的?
还有就是见到echo "",又见过直接的有什么区别呢?
谢谢
追答
可以直接使用。
程序设计中,建立函数的目的就是为了能重复使用相同的代码来处理不同的数据.

函数和命令行是不同的

echo() 实际上不是一个函数,因此您无需对其使用括号。不过,如果您希望向 echo() 传递一个或多个参数,那么使用括号会发生解析错误,简单的说就像 if 语句一样
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
百度网友7c00d9f
2013-10-11 · 超过18用户采纳过TA的回答
知道答主
回答量:55
采纳率:0%
帮助的人:42.6万
展开全部

1.

function a ($b)
{
    return $b;
}//这样也是完全合法的,但这么整是没意义啊。
2 你说的返回函数名我理解大概是这样
function FunName()
{
    $funname=$something+$someone;
    rerurn $funname;
}//如果是理解这样话 明显是个误导。返回和函数名一样的东西,既没有必要,也没一点实用的价值。返回值在函数中一般是根据返回的类型,如果返回时字符串一般就$str 数组就$array这样的。
3 如果写成 echo longdate(  time()   )  就好看了,
你所谓的外面的括弧,是longdate() ,这个样子,你在用longdate的时候不是应该longdate($some)吗,这里的 time()是作为传入参数啊,
4.刚起步的话,一定得多写,不要懒,写的越多理解的越快,别以为简单能看懂的写不写不重要。这都是血淋林的教训。
追问
请问可以不返回吗?就是说函数是不是一定要求返回的?那内置函数好像又没有返回的?
还有就是见到echo "",又见过直接的有什么区别呢?
谢谢
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 更多回答(3)
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式