【发布时间】:2018-04-25 17:22:14
【问题描述】:
所以我有一段代码,它获取数组的第一个单词并将其包装在一个跨度中,但我需要对 2 个不同的标题执行此操作。
我不想复制看起来很糟糕的相同代码块,我想使用 for 循环,如何将 $i 与变量名或 'tytul1' 连接起来?
for ($i = 1; $i <= 2; $i++) {
$calloutTitleExplode1 = explode(' ',trim($callout['tytul1']));
$calloutTitleSpan1 = '<span>'.$calloutTitleExplode1[0].'</span> ';
$calloutTitleShifted1 = array_shift($calloutTitleExplode1);
$calloutTitleRest1 = implode(" ", $calloutTitleExplode1);
$callout['tytul1'] = $calloutTitleSpan1 . $calloutTitleRest1;
$calloutTitleExplode2 = explode(' ',trim($callout['tytul2']));
$calloutTitleSpan2 = '<span>'.$calloutTitleExplode2[0].'</span> ';
$calloutTitleShifted2 = array_shift($calloutTitleExplode2);
$calloutTitleRest2 = implode(" ", $calloutTitleExplode2);
$callout['tytul2'] = $calloutTitleSpan2 . $calloutTitleRest2;
}
【问题讨论】:
-
不要与变量名连接,这很愚蠢。但是对于访问的数组,
$callout['tytul'.$i]像任何其他字符串一样连接。 -
使用
${"your_var_name_without_the_number$i"}作为变量
标签: php for-loop concatenation