我正在用HTML / PHP编写一个连接到Marina数据库(船只,船主等......)的页面,该数据库从下拉列表中选择一个船名,然后显示该船已经完成的所有服务
这是我的相关代码......
if(isset($_POST['form1'])){//if there was input data submitted
$form1 = $_POST['form1'];
$sql1 = 'select Status from ServiceRequest,MarinaSlip where MarinaSlip.SlipID = ServiceRequest.SlipID and BoatName = "'.$form1.'"';
$form1 = null;
$result1 = $conn->query($sql1);
$test = 0;
while ($row = mysqli_fetch_array($result1, MYSQLI_ASSOC)) {
$values1[] = array(
'Status' => $row['Status']
);
$test = 1;
}
echo '<p>Service Done:</p><ol>';
if($test = 1){
foreach($values1 as $v1){
echo '<li>'.$v1['Status'].'</li>';
}
echo '</ol>';
}else{
echo 'No service Done';
}
我遇到的问题是服务的一些描述只是Open
,我不希望显示为服务完成,或者根本没有服务完成,这会抛出undefined variable: values1
如何阻止我的脚本将Open
添加到values1
数组,如果values1
为空,则会显示一条消息,表明没有完成任何工作?
答案 0 :(得分:2)
试试这个
$arr = array();
if (empty($arr))
{
echo'empty array';
}
答案 1 :(得分:2)
要确保数组为空,可以使用count()和empty()。但count()稍微慢于empty()。count()返回数组中存在的元素数。
$arr=array();
if(count($arr)==0){
//your code here
}
答案 2 :(得分:2)
我们经常使用empty($array_name)
来检查它是否为空
<?php
if(!empty($array_name))
{
//not empty
}
else
{
//empty
}
还有另一种方法可以让我们确定使用count()
函数
if(count($array_name) > 0)
{
//not empty
}
else
{
//empty
}
?>
答案 3 :(得分:2)
试试这个
<IfModule mod_rewrite.c>
Options +FollowSymLinks
RewriteEngine on
RewriteBase /
# Some RewriteRules
RewriteRule ^api$ api.php
</IfModule>
答案 4 :(得分:1)
你可以尝试这个 -
FocusNode focusNode;
void initState() {
focusNode = new FocusNode();
// listen to focus changes
focusNode.addListener(() => print('focusNode updated: hasFocus: ${focusNode.hasFocus}'));
}
void setFocus() {
FocusScope.of(context).requestFocus(focusNode);
}
Widget build() {
return
...
new TextField(focusNode: focusNode, ...);
}
答案 5 :(得分:1)
我经常使用empty($arr)
来执行此操作。
答案 6 :(得分:1)
你所要做的就是得到布尔值
empty($array)
。如果数组为空,它将返回false
。
您可以将empty($varName)
用于多种用途。
有关更多参考:http://php.net/manual/en/function.empty.php
答案 7 :(得分:1)
我认为你需要的是检查$ values1是否存在所以尝试使用isset()来做这个并且不需要使用$ test var:
if(isset($values1))
foreach($values1 as $v1){
echo '<li>'.$v1['Status'].'</li>';
}
或尝试在while之前定义$ values1:
$values1 = array();
然后检查它是否为空:
if($values1 != '')
foreach($values1 as $v1){
echo '<li>'.$v1['Status'].'</li>';
}
答案 8 :(得分:0)
请改为尝试:
if (!$values1) {
echo "No work has been completed";
} else {
//Do staffs here
}