【问题标题】:php returns 1 on browser [closed]php 在浏览器上返回 1 [关闭]
【发布时间】:2015-07-18 15:48:42
【问题描述】:

我有一个简单的问题。我在我的系统中经常使用表达式<?=a_function();?>,但每次当 a_function() 返回 true 时,它​​都会在我的页面上显示“1”。我还可以做些什么?我听说我应该总是返回一些东西,但是这个 1 是什么?

【问题讨论】:

  • = 是回显的完全有效的简写。
  • 请参阅this post - "1" 是 php 如何将 true 转换为字符串。

标签: php methods return


【解决方案1】:

10 是布尔值,相当于truefalse

PHP Manual

How does true/false work in PHP?

另外,如果你只想运行函数而不输出任何东西,只需使用<?php a_function(); ?>

【讨论】:

  • 如果我想使用 =?> 而没有得到 1 的回报怎么办?我应该创建一个返回 true 的函数吗?
  • 没有。 <?= a_function(); ?> 直接相当于写 <?php echo a_function(); ?><?= 应该是回显返回的任何内容的速记替代方案。改用<?php,您将运行该函数——所有这些都不会回显返回的内容。
  • 你会说必须声明结果吗?
  • 从函数返回值truefalse/null 是一种很好的做法。如果您没有返回任何内容,则返回 true 或一个值表示函数成功;返回 falsenull 表示函数中的某些内容未正确验证。
  • return; 是不好的做法?
【解决方案2】:

你这样做的意义何在?
我不明白,但我认为a_function(); 返回布尔表达式的整数值。
布尔表达式总是101=true0=false
例如,在 PHP 中,如果您键入 1==0;,它将返回 false,如果您将其作为整数回显,它将打印 0
另外,您在代码中使用了=。删除它,您的页面将不显示任何内容。

【讨论】:

  • 例如a_function($message); 从数据库加载一条消息并“回显”它。如果我返回 true,它将显示消息和 1..
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2011-09-28
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-03-31
相关资源
最近更新 更多