遍历数组并从每个键创建一个 HTML 锚点 PHP
Looping through an array and create from each key an HTML anchor in PHP
PHP 的新手,对于大学我有一个基本任务的框架:我必须制作一个包含 3 个人及其年龄的关联数组,然后我必须循环该数组 (foreach) 并制作一个 HTML anchor/link 每个键。每个 anchor/link 都会影响 if (isset($_GET['name'])
之间的内容
这是关联数组 ($age)
$age['Atticus'] ="2100";
$age['McDunna'] ="96";
$age['Oberon'] ="13";
我可以change/add在这个"loop"中做什么,以便它们影响if (isset($_GET['name'])
foreach ($age as $key => $value) {
echo "<a href=\"GET\">'$key'</a>";
echo "<br>";
我也考虑过让数组从每个键创建一个表单,这样我就可以使用 form 方法 =get 但我不太确定这是否可行。
这是我的第一个问题,如果有些部分令人困惑,我很抱歉,我很乐意澄清一些问题。如果更容易,我可以提供骨架代码:
<?php
// TODO make an assoc array with 3 people and their age.;
if( isset( $_GET['name']) ){
// TODO create a text with the name and age;
$infoText= "$age";
$infoText = NULL;
}else{
// TODO create generic text.;
}
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<header>
<?php
// TODO "Loop" the $age array. and for every key create an HTML anchor/link.;
foreach ($age as $key => $value) {
echo "<a href=\"GET\">'$key'</a>";
echo "<br>";
}
?>
</header>
<h3><?php // TODO display the infoText ?></h3>
</body>
替换为:
<?php
// TODO make an assoc array with 3 people and their age.;
$age['Atticus'] = 2100;
$age['McDunna'] = 96;
$age['Oberon'] = 13;
$infoText = 'Not selected';
if (isset( $_GET['name']) ){
$name = $_GET['name'];
if(array_key_exists($name, $age)) {
$infoText = 'Name: ' .$name . ' Age: '. $age[$name]; // Name: John Age: 27
}
}
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<header>
<?php
// TODO "Loop" the $age array. and for every key create an HTML anchor/link.;
foreach ($age as $key => $value) {
echo "<a href=\"?name=".$key."\">".$key."</a>";
echo "<br>";
}
?>
</header>
<h3><?php echo $infoText; ?></h3>
</body>
PHP 的新手,对于大学我有一个基本任务的框架:我必须制作一个包含 3 个人及其年龄的关联数组,然后我必须循环该数组 (foreach) 并制作一个 HTML anchor/link 每个键。每个 anchor/link 都会影响 if (isset($_GET['name'])
之间的内容这是关联数组 ($age)
$age['Atticus'] ="2100";
$age['McDunna'] ="96";
$age['Oberon'] ="13";
我可以change/add在这个"loop"中做什么,以便它们影响if (isset($_GET['name'])
foreach ($age as $key => $value) {
echo "<a href=\"GET\">'$key'</a>";
echo "<br>";
我也考虑过让数组从每个键创建一个表单,这样我就可以使用 form 方法 =get 但我不太确定这是否可行。
这是我的第一个问题,如果有些部分令人困惑,我很抱歉,我很乐意澄清一些问题。如果更容易,我可以提供骨架代码:
<?php
// TODO make an assoc array with 3 people and their age.;
if( isset( $_GET['name']) ){
// TODO create a text with the name and age;
$infoText= "$age";
$infoText = NULL;
}else{
// TODO create generic text.;
}
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<header>
<?php
// TODO "Loop" the $age array. and for every key create an HTML anchor/link.;
foreach ($age as $key => $value) {
echo "<a href=\"GET\">'$key'</a>";
echo "<br>";
}
?>
</header>
<h3><?php // TODO display the infoText ?></h3>
</body>
替换为:
<?php
// TODO make an assoc array with 3 people and their age.;
$age['Atticus'] = 2100;
$age['McDunna'] = 96;
$age['Oberon'] = 13;
$infoText = 'Not selected';
if (isset( $_GET['name']) ){
$name = $_GET['name'];
if(array_key_exists($name, $age)) {
$infoText = 'Name: ' .$name . ' Age: '. $age[$name]; // Name: John Age: 27
}
}
?>
<!DOCTYPE html>
<html>
<head>
</head>
<body>
<header>
<?php
// TODO "Loop" the $age array. and for every key create an HTML anchor/link.;
foreach ($age as $key => $value) {
echo "<a href=\"?name=".$key."\">".$key."</a>";
echo "<br>";
}
?>
</header>
<h3><?php echo $infoText; ?></h3>
</body>