php - 如何检查字符串是否不存在然后返回 false?
问题描述
如果 $str 不存在,我试图让我的代码返回 false
这是我尝试过的(但没有奏效):
function rev_epur_str($str)
{
$str = implode(' ', array_map('strrev', explode(' ', $str)));
$str = preg_replace('/\s+/', '', $str);
if (isset($str))
{
return $str;
}
else
{
return false;
}
}
var_dump(rev_epur_str());
输出说:
PHP Warning: Missing argument 1 for rev_epur_str()
它只是返回一个错误而不是 false
var_dump(rev_epur_str("")); // returns string(0) "" instead of FALSE
$str
如果为空,我如何返回 false ?
解决方案
你可以在 PHP 中设置一个参数的默认值。下面的代码创建$str
了一个可选参数,同时,它会empty
检查是否返回 false。
function rev_epur_str($str = '')
{
if (empty($str))
return false;
$str = implode(' ', array_map('strrev', explode(' ', $str)));
$str = preg_replace('/\s+/', '', $str);
return $str;
}
var_dump(rev_epur_str()); // false
var_dump(rev_epur_str('str')); // rts
注意:原始代码中显示的错误是完全有效的,您已设置函数接受参数,因此您必须将参数传递给它,也就是说,除非您为所述参数使用默认值(这是已经完成的以上)。
现场示例
阅读材料
推荐阅读
- react-native - 如何从数组中为 AsyncSelect 设置样式边框颜色 - ReactNative?
- vue.js - 在 vue-cli3 中为构建文件提供静态文件名
- regex - 即使您不在正确的组中,Perl 正则表达式分组结果也会添加额外的字符
- python - 运行成本 sigmoid 成本函数时出错
- javascript - 多次调用数据库无法正常工作
- matlab - 如何比较一维矩阵的值?
- c# - 为什么 char 数组在控制台上显示内容,而 string 和 int 数组在 c# 中却没有?
- kubernetes - 重启节点后,由于 weave IP 不足,Pod 卡在 containerCreating 状态
- javascript - 如何强制按钮在 vue.js 中保持一行?
- ansible - 从清单中的组打印主机名