当用`return`语句不结束php函数时,它被认为是“坏风格”吗?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了当用`return`语句不结束php函数时,它被认为是“坏风格”吗?相关的知识,希望对你有一定的参考价值。

我想使用php函数在我的页面的头部加载Google字体。

我的<head>-area看起来像这样:

...
<?=Class->loadGoogleFonts($fontsfile)?>
...

现在我有这种感觉,我必须用return语句结束loadGoogleFonts函数。但是当我这样做时,会显示一个“1”(因为<?=)。

避免返回声明是不好的风格?

答案

一般来说,没有回报并不是坏事。如果您不想显示任何内容,请使用<?= .. ?>is样式。只需使用<?php .. ?>

如果某些代码路径返回值,则没有返回可能是错误的样式,但其他代码路径不返回。

另一答案

返回值是可选的。 PHP Manual说:

如果省略return,则返回值NULL。

因此,即使你自己没有返回任何东西,也会有一个返回的东西,虽然那个东西将是空的。


在你的例子中:

<?=Class->loadGoogleFonts($fontsfile)?>

如果没有返回,那么Class->loadGoogleFonts($fontsfile)的值将是null

因此,因为它是null你使用<?=毫无意义。 <?php echo null;?>什么都不做。

如果它有时是null,有时是值,那么你应该总是返回一些东西来避免这种歧义。例如;假设返回值是该方法加载的字体数(3)。如果没有加载字体,则该方法应显式返回0而不是null。你应该让你的回报一致的类型。

另一答案

只是用

<?php ... ?>

代替

<?= .. ?>

以上是关于当用`return`语句不结束php函数时,它被认为是“坏风格”吗?的主要内容,如果未能解决你的问题,请参考以下文章

每天一个编程小技巧C++ return:使函数立即结束!

exit()和return语句的区别

return

每天一个编程小技巧C++ return:使函数立即结束!

python中函数嵌套循环语句时,return 如何正确使用返回值

threeday