我正在加载像这样的视图
if($type == 'view'){
// do something
}else if($type == 'insert'){
// Here i am making a form
?>
<select>
<?php
foreach($applications as $row)
{
?>
<option value = "<?php echo $row->id;?>">
<?php echo $row->name;?>
</option>
<?php } ?>
</select>
<?
}else{
//do some thing else
}
现在这是我遇到的错误:
解析错误:语法错误,第xx行的网址中出现意外的T_ELSE
奇怪的是,如果我注释掉循环,如果工作正常。问题是什么以及如何解决?
答案 0 :(得分:0)
它对我来说很好......再试一次
<?php
if($type == 'view'){
// do something
}else if($type == 'insert'){
// Here i am making a form
?>
<select>
<?
foreach($applications as $row){
?><option value = "<?php echo $row->id;?>"><?php echo $row->name;?></option>
<?php
}
?>
</select>
<?
}else{
//do some thing else
}
答案 1 :(得分:0)
也许你想要这样的代码:
<?php
if ($type == 'view')
{
// do something
}
elseif ($type == 'insert')
{
// Here i am making a form
?>
<select>
<?php
foreach($applications as $row)
{
?>
<option value = "<?php echo $row->id;?>"><?php echo $row->name;?></option>
<?php
}
?>
</select>
<?php
}
else
{
//do some thing else
}
?>
答案 2 :(得分:0)
使用开关,您可以更优雅地编写代码,当然也更快,请尝试:
switch($type){
case 'view':
//do something
break;
case 'insert':
echo '<select>';
foreach($applications as $row){
echo '<option value="'.$row->id.'">'.$row->name.'</option>';
}
echo '</select>';
break;
default:
//do something else
break;
}
答案 3 :(得分:0)
你需要像这样使用codeigniter 循环:
<?php foreach ($applications as $row):?>
<option value = "<?php echo $row->id; ?>">
<?php echo $row->name; ?>
</option>
<?php endforeach;?>