关于“最简单的代码是什么?”的几个问题:
没有{}
if($match->name == "Marry") {
$match = true;
}
没有{}
if($match->name == "Marry") {
$match = true;
} else {
$match = false;
}
如何问if $match = true
?
如何问if array() has any value
?
如何问if $variable has numeric value
(0-9)?
如何问if $variable's first symbol isn't a letter or number
?
如何问if $match = false
?
答案 0 :(得分:2)
1)
if($match->name == "Marry") {
$match = true;
}
这已经足够短了,你不能在不损害可读性的情况下改变它(除了可能删除括号)。
2)
$match = ($match->name == "Marry");
请注意,您使用的是相同的变量名称。
3)
if ($match = true)
我想你想if ($match == true)
,应该只写if ($match)
。
4)
(编辑我将其视为“特别是有任何(=某些)值”,检查数组是否为空,您可以使用empty
)
请参阅in_array
。
5)
有几种方法,可能的方法是
is_numeric($variable) && strlen("$variable") == 1
要允许开始0,你可以
is_numeric($variable) && $variable >= 0 && $variable <= 9
6)
ctype_alnum($variable[0])
答案 1 :(得分:1)
1)
$match = ($match->name == "Marry") ? true : $match;
2)
$match = ($match->name == "Marry");
3)
if ( $match === true ) {}
4)
$array = array();
if ( !empty( $array ) ) {}
5)
if ( is_numeric( $variable ) ) {}
6)
if ( ctype_alnum($variable[0]) ) ) {}
答案 2 :(得分:1)
A1。不能真正缩短,在第2部分的情况下接受
A2。 $ match =($ match-&gt; name ==“Marry”);
A3。我怀疑你的意思......
if ($match) {
echo "Value of $match evaluates as true";
}
A4。不确定你的意思......
if (empty($array)) {
// or
if (in_array($variable, $array)) {
A5。
if (is_numeric($variable)) {
echo "it's numeric";
}
A6。
if (preg_match('#^[^a-z\d]#i', $variable) {
echo "doesn't start with letter or number";
}
答案 3 :(得分:0)
1) OK
2) $match = ($match->name == 'Marry';
3) if ($match)
4) if (count($array))
5) preg_match('/^[+-]?\d+(\.\d+)?$/', $string)
6) preg_match('/^[^0-9a-zA-Z]/', $string)