我有一个PHP代码(wordpress)工作正常,我觉得有一种更聪明的方法可以通过某种类型的某种数组来缩短整个语法,有人提供帮助,代码整洁首先出现,这里是:
<?php
$user = wp_get_current_user();
// is there someone logged?
if ($user->ID) {
echo '<ul class="availableindex nav nav-pills nav-stacked">';
$n1 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER1'));
$n2 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER2'));
$n3 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER3'));
$n4 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER4'));
$n5 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER5'));
$n6 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER6'));
$n7 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER7'));
$n8 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER8'));
$n9 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER9'));
$n10 = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER10'));
echo '<li><a href=# class=dir>' . $n1 . '</a></li>';
echo '<li><a href=# class=dir>' . $n2 . '</a></li>';
echo '<li><a href=# class=dir>' . $n3 . '</a></li>';
echo '<li><a href=# class=dir>' . $n4 . '</a></li>';
echo '<li><a href=# class=dir>' . $n5 . '</a></li>';
echo '<li><a href=# class=dir>' . $n6 . '</a></li>';
echo '<li><a href=# class=dir>' . $n7 . '</a></li>';
echo '<li><a href=# class=dir>' . $n8 . '</a></li>';
echo '<li><a href=# class=dir>' . $n9 . '</a></li>';
echo '<li><a href=# class=dir>' . $n10 . '</a></li>';
echo '</ul>';
}
?>
答案 0 :(得分:4)
缩短的方式可能是
$numberArray = array('NUMBER1', 'NUMBER2',...);
foreach ($numberArray as $number)
{
echo '<li><a href=# class=dir>' . cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, $number)) . '</a></li>';
}
答案 1 :(得分:2)
for($i = 1; $i <= 10; $i++) {
echo '<li><a href=# class=dir>' .
cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER' . $i))
'</a></li>';
}
答案 2 :(得分:1)
您可以使用循环创建$n
数组,然后使用另一个循环来打印它。
$count = 10;
for($i = 0; $i < $count; $i++) {
$n[$i] = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER' . $i+1));
}
for($i = 0; $i < $count; $i++) {
echo '<li><a href=# class=dir>' . $n[$i] . '</a></li>';
}
或者,如果你不需要单独完成它们,你可以在一个循环中完成所有操作,而不需要任何数组。
$count = 10;
for($i = 0; $i < $count; $i++) {
echo '<li><a href=# class=dir>' . cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER' . $i)); . '</a></li>';
}
答案 3 :(得分:0)
。试试这个
$user = wp_get_current_user();
// is there someone logged?
if ($user->ID) {
echo '<ul class="availableindex nav nav-pills nav-stacked">';
for($i=1; $i<=10; $i+=1){
$t = cimy_uef_sanitize_content(get_cimyFieldValue($user->ID, 'NUMBER' . $i));
echo '<li><a href=# class=dir>' . $n[$i] . '</a></li>';
}
echo '</ul>';
}