表中显示的PhP关联数组
我对PhP非常陌生。我在网上很难找到答案,尽管我相信你们大多数人很快就会知道答案。我有下面的代码创建一个关联数组,然后我试图在表中显示它。我知道有更简单的方法可以像foreach循环一样在表中显示它,但我想先学习一下这个方法:表中显示的PhP关联数组,php,associative-array,Php,Associative Array,我对PhP非常陌生。我在网上很难找到答案,尽管我相信你们大多数人很快就会知道答案。我有下面的代码创建一个关联数组,然后我试图在表中显示它。我知道有更简单的方法可以像foreach循环一样在表中显示它,但我想先学习一下这个方法: class CarDealer extends Company { var $navbar_array = array(); function create_navbar_array ( ) { $mainurl = $this->company_
class CarDealer extends Company {
var $navbar_array = array();
function create_navbar_array ( ) {
$mainurl = $this->company_url; // get the main url address of this web page
$this->navbar_array = array( "Home Page"=>"$mainurl?whichpage=home", "Sales"=>"$mainurl?whichpage=sales",
"Support" => "$mainurl?whichpage=support", "Contacts" => "$mainurl?whichpage=contact" );
}
function getLeftNavBar() {
$data ="<table border='1' style='background-color:yellow; width:35%'>";
$data .="<tr><td>$this->navbar_array['Home Page']</td></tr>";
$data .="<tr><td>$this->navbar_array['Sales']</td></tr>";
$data .="<tr><td>$this->navbar_array['Support']</td></tr>";
$data .="<tr><td>$this->navbar_array['Contacts']</td></tr>";
$data .="</table>";
return $data;
}
}
在返回$data之前;,打印(数据);因此,您可以了解关联数组的结构。如果它没有打印在页面上,请尝试查看页面源。你会得到一个清晰的画面。我认为$data应该是一个数组,所以它应该是 $data['someField']=$someValues;
并且,在使用数组之前创建或定义数组。您需要将数组值传递给函数try
class extends Company {
var $navbar_array = array();
function create_navbar_array ( ) {
$mainurl = $this->company_url; // get the main url address of this web page
$this->navbar_array = array( "Home Page"=>"$mainurl?whichpage=home", "Sales"=>"$mainurl?whichpage=sales",
"Support" => "$mainurl?whichpage=support", "Contacts" => "$mainurl?whichpage=contact" );
return $this->navbar_array;
}
function getLeftNavBar($arr) {
$data ="<table border='1' style='background-color:yellow; width:35%'>";
$data .="<tr><td>".$arr['Home Page']."</td></tr>";
$data .="<tr><td>".$arr['Sales']."</td></tr>";
$data .="<tr><td>".$arr['Support']."</td></tr>";
$data .="<tr><td>".$arr['Contacts']."</td></tr>";
$data .="</table>";
return $data;
}
}
$carobject = new CarDealer();
$arr = $carobject->create_navbar_array();
print $carobject->getLeftNavBar($arr);
您需要在getLeftNavBar()方法中连接数组值,以便php知道如何解析它们 试一试 你可以这样重写
class CarDealer {
private function getUrls() {
return array(
"Home Page" => "$this->company_url?whichpage=home",
"Sales" => "$this->company_url?whichpage=sales",
"Support" => "$this->company_url?whichpage=support",
"Contacts" => "$this->company_url?whichpage=contact"
);
}
public function getLeftNavBar() {
$data ="<table border='1' style='background-color:yellow; width:35%'>";
foreach($this->getUrls() as $url ) {
$data .="<tr><td>".$url."</td></tr>";
}
return $data . "</table>";
}
}
$carobject = new CarDealer();
print $carobject->getLeftNavBar();
class卡迪勒{
私有函数getURL(){
返回数组(
“主页”=>“$this->company\u url?whichpage=Home”,
“销售”=>“$this->company\u url?whichpage=Sales”,
“支持”=>“$this->company\u url?whichpage=Support”,
“联系人”=>“$this->company\u url?whichpage=contact”
);
}
公共函数getLeftNavBar(){
$data=“”;
foreach($this->getUrls()作为$url){
$data.=''.$url.'';
}
返回$data。”;
}
}
$carobject=new CarDealer();
打印$carobject->getLeftNavBar();
工作正常。我只需要包含HTML
public $navbar_array = array();
$data .="<tr><td>{ $this->navbar_array['Home Page'] }</td></tr>";
$data .="<tr><td>".$this->navbar_array['Sales']."</td></tr>";
function getLeftNavBar() {
$this->create_navbar_array();
.....
class CarDealer {
private function getUrls() {
return array(
"Home Page" => "$this->company_url?whichpage=home",
"Sales" => "$this->company_url?whichpage=sales",
"Support" => "$this->company_url?whichpage=support",
"Contacts" => "$this->company_url?whichpage=contact"
);
}
public function getLeftNavBar() {
$data ="<table border='1' style='background-color:yellow; width:35%'>";
foreach($this->getUrls() as $url ) {
$data .="<tr><td>".$url."</td></tr>";
}
return $data . "</table>";
}
}
$carobject = new CarDealer();
print $carobject->getLeftNavBar();