Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/243.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
PHP数组未在HTML中显示选择列表_Php_Html_Arrays_Loops_Variables - Fatal编程技术网

PHP数组未在HTML中显示选择列表

PHP数组未在HTML中显示选择列表,php,html,arrays,loops,variables,Php,Html,Arrays,Loops,Variables,我有一个带有状态列表的数组,我正试图让它显示在我的选择列表中。我没有收到任何错误,但选择列表中没有显示任何选项。我只是想让它在数组中循环并在HTML中显示状态 function statesList() { $states = array('AL'=>"Alabama", 'AK'=>"Alaska", 'AZ'=>"Arizona", 'AR'=>"Arkansas",

我有一个带有状态列表的数组,我正试图让它显示在我的选择列表中。我没有收到任何错误,但选择列表中没有显示任何选项。我只是想让它在数组中循环并在HTML中显示状态

function statesList() {
$states = array('AL'=>"Alabama",
                'AK'=>"Alaska",
                'AZ'=>"Arizona",
                'AR'=>"Arkansas",
                'CA'=>"California",
                'WY'=>"Wyoming");
return $states;
}

$email_form = '<?php $states = statesList(); ?>
<form class="aw-contact-form" method="post" action="' . get_permalink() . '">
        <label for="cf_state">' . $label_state . '</label>
            <select name="state" id="cf_state">
                <option selected="selected"></option>
                <?php foreach($states as $key=>$value) { ?>
                <option value="<?php echo $key; ?>"><?php $value; ?></option>
                <?php } ?>
            </select>
</form>';

return $email_form;
函数状态列表(){
$states=数组('AL'=>“阿拉巴马”,
“AK”=>“阿拉斯加”,
“AZ”=>“亚利桑那州”,
“AR”=>“阿肯色州”,
“加州”=>“加州”,
“怀俄明州”=>“怀俄明州”);
返回$states;
}
$email\u form='1
' . $给州贴上标签。”

是的,语法有问题,foreach被放在字符串中,因此它被解析为字符串,而不是要执行的php代码。$states也是空的,因为它被放置在函数之外。要获得$states值,必须调用函数。 这是固定版本:

function statesList() {
$states = array('AL'=>"Alabama",
                'AK'=>"Alaska",
                'AZ'=>"Arizona",
                'AR'=>"Arkansas",
                'CA'=>"California",
                'WY'=>"Wyoming");
return $states;
}    


$email_form = '<form class="aw-contact-form" method="post" action="' . get_permalink() . '">
        <label for="cf_state">' . $label_state . '</label>
            <select name="state" id="cf_state">
                <option selected="selected"></option>';

$states = statesList();
foreach ($states as $key => $value) {
    $email_form .= '<option value="' . $key . '">' . $value . '</option>';
}
$email_form .= '</select>
</form>';

return $email_form;
函数状态列表(){
$states=数组('AL'=>“阿拉巴马”,
“AK”=>“阿拉斯加”,
“AZ”=>“亚利桑那州”,
“AR”=>“阿肯色州”,
“加州”=>“加州”,
“怀俄明州”=>“怀俄明州”);
返回$states;
}    
$email\u form='1
' . $给州贴上标签。”
';
$states=statesList();
foreach($key=>$value){
$email_form.=''.$value';
}
$email_form.='
';
返回$email_表格;

是语法有问题,foreach放在字符串中,因此它被解析为字符串,而不是要执行的php代码。$states也是空的,因为它被放置在函数之外。要获得$states值,必须调用函数。 这是固定版本:

function statesList() {
$states = array('AL'=>"Alabama",
                'AK'=>"Alaska",
                'AZ'=>"Arizona",
                'AR'=>"Arkansas",
                'CA'=>"California",
                'WY'=>"Wyoming");
return $states;
}    


$email_form = '<form class="aw-contact-form" method="post" action="' . get_permalink() . '">
        <label for="cf_state">' . $label_state . '</label>
            <select name="state" id="cf_state">
                <option selected="selected"></option>';

$states = statesList();
foreach ($states as $key => $value) {
    $email_form .= '<option value="' . $key . '">' . $value . '</option>';
}
$email_form .= '</select>
</form>';

return $email_form;
函数状态列表(){
$states=数组('AL'=>“阿拉巴马”,
“AK”=>“阿拉斯加”,
“AZ”=>“亚利桑那州”,
“AR”=>“阿肯色州”,
“加州”=>“加州”,
“怀俄明州”=>“怀俄明州”);
返回$states;
}    
$email\u form='1
' . $给州贴上标签。”
';
$states=statesList();
foreach($key=>$value){
$email_form.=''.$value';
}
$email_form.='
';
返回$email_表格;
试试这个:

<?php 
error_reporting(0);
function statesList() {
$states = array('AL'=>"Alabama",
                'AK'=>"Alaska",
                'AZ'=>"Arizona",
                'AR'=>"Arkansas",
                'CA'=>"California",
                'WY'=>"Wyoming");
return $states;
}
$states = statesList(); 
$email_form .= '<form class="aw-contact-form" method="post" action="' . get_permalink() . '">
                <label for="cf_state">' . $label_state . '</label>
                <select name="state" id="cf_state">
                <option selected="selected"></option>';
                foreach($states as $key=>$value) { 
                $email_form .= '<option value="'.$key.'">'.$value.'</option>';
                 } 
            $email_form .= '</select>
            </form>';

return $email_form;

?>

试试这个:

<?php 
error_reporting(0);
function statesList() {
$states = array('AL'=>"Alabama",
                'AK'=>"Alaska",
                'AZ'=>"Arizona",
                'AR'=>"Arkansas",
                'CA'=>"California",
                'WY'=>"Wyoming");
return $states;
}
$states = statesList(); 
$email_form .= '<form class="aw-contact-form" method="post" action="' . get_permalink() . '">
                <label for="cf_state">' . $label_state . '</label>
                <select name="state" id="cf_state">
                <option selected="selected"></option>';
                foreach($states as $key=>$value) { 
                $email_form .= '<option value="'.$key.'">'.$value.'</option>';
                 } 
            $email_form .= '</select>
            </form>';

return $email_form;

?>

有一些语法问题,但我为您解决了它们

<html>
<head>
<title>Online PHP Script Execution</title>
</head>
<body>
<?php
function statesList() {
$states = array('AL'=>"Alabama",
                'AK'=>"Alaska",
                'AZ'=>"Arizona",
                'AR'=>"Arkansas",
                'CA'=>"California",
                'WY'=>"Wyoming");
return $states;
}

$email_form = ($states = statesList());
?>
<form class="aw-contact-form" method="post" action="hello.php">
        <label for="cf_state"><?php echo $label_state  ?> </label>
            <select name="state" id="cf_state">
                <option selected="selected"></option>
                <?php foreach($states as $key=>$state) { ?>
                <option value="<?php echo $key; ?>"><?php echo $state; ?></option>
                <?php } ?>
            </select>
</form>
<?php 
return $email_form;
?>
</body>
</html>

在线PHP脚本执行

有一些语法问题,但我帮你解决了

<html>
<head>
<title>Online PHP Script Execution</title>
</head>
<body>
<?php
function statesList() {
$states = array('AL'=>"Alabama",
                'AK'=>"Alaska",
                'AZ'=>"Arizona",
                'AR'=>"Arkansas",
                'CA'=>"California",
                'WY'=>"Wyoming");
return $states;
}

$email_form = ($states = statesList());
?>
<form class="aw-contact-form" method="post" action="hello.php">
        <label for="cf_state"><?php echo $label_state  ?> </label>
            <select name="state" id="cf_state">
                <option selected="selected"></option>
                <?php foreach($states as $key=>$state) { ?>
                <option value="<?php echo $key; ?>"><?php echo $state; ?></option>
                <?php } ?>
            </select>
</form>
<?php 
return $email_form;
?>
</body>
</html>

在线PHP脚本执行

你不能使用
你不能使用
谢谢大家的回答,但这次成功了。谢谢你,赛义德!谢谢大家的回答,但这次成功了。谢谢你,赛义德!