我目前正在single.php
文件中使用以下内容列出我的帖子所属的父类别和子类别:
foreach((get_the_category()) as $category) {
echo '<h1>'.$category->cat_name . '</h1>';
}
所以这导致:
<h1>Events</h1><h1>News</h1>
但是,我想将每个<h1>
值存储在一个单独的变量中。
所以我的最终代码可能是:
$i1 = "<h1>Events</h1>";
$i2 = "<h1>News</h1>";
我该怎么做?
答案 0 :(得分:6)
您想使用“变量变量”:
$j = 1;
foreach((get_the_category()) as $category) {
$i{$j} = '<h1>' . $category->cat_name . '</h1>';
$j++;
}
但是,我只想使用数组:
$i = array();
foreach((get_the_category()) as $category) {
$i[] = '<h1>' . $category->cat_name . '</h1>';
}
答案 1 :(得分:1)
您可以使用array_map
将所有cat_name
返回到数组...您还可以使用list将它们分成2个不同的变量
# List Of Name form array
$categories = array_map(function($category){ return "<h1>" . $category->cat_name . "</h1>";}, get_the_category());
# List Name to diffrent varraibles
list($i1,$i2) = $categories ;
答案 2 :(得分:0)
你可以这样做:
$n = 0;
foreach((get_the_category()) as $category) {
$i{$n} = '<h1>'.$category->cat_name . '</h1>';
$n++;
}
Take a look at this manual。这很奇怪,可能会让你的代码混乱(我不建议这样做。为什么不使用数组呢?
$categories = array();
$n = 0;
foreach((get_the_category()) as $category) {
$categories[$n] = '<h1>'.$category->cat_name . '</h1>';
$n++;
}