我有一個包含元素數量可以是 6 或 8 的陣列n,如下所示:
$langs = ["PHP", "JAVA", "Ruby", "C", "C ", "Perl"];
我想在元素旁邊平均添加一年
在 6 個元素的情況下所需的輸出:
- PHP - 2022
- 爪哇 - 2022
- 紅寶石 - 2022
- C - 2023
- C - 2023
- Perl - 2023
在 9 個元素的情況下所需的輸出:
- PHP - 2022
- 爪哇 - 2022
- 紅寶石 - 2022
- C - 2023
- C - 2023
- Perl - 2023
- 蟒蛇 - 2024
- Javascript - 2024
- mysql - 2024
我的嘗試:
$date = Carbon::now();
foreach($langs as $key => $lang){
if(count($langs) % $key == 0){
echo $lang .' - '. $date->addYear();
}
}
uj5u.com熱心網友回復:
每次撞年$key都不為零,$key / 3也沒有余數。
代碼:(演示)
$langs = ["PHP", "JAVA", "Ruby", "C", "C ", "Perl", "Perl", "Python", "Javascript", "Mysql"];
$date = Carbon::now();
foreach ($langs as $key => $lang){
if ($key && $key % 3 === 0) {
$date->addYear();
}
echo $lang .' - '. $date->year . PHP_EOL;
}
老實說,我認為為這個非常基本的任務呼叫日期時間包裝器沒有任何好處。date()您可以使用 PHP 的本機函式輕松替換 Carbon 的所有用法。(演示)
$langs = ["PHP", "JAVA", "Ruby", "C", "C ", "Perl", "Perl", "Python", "Javascript", "Mysql"];
$year = date('Y');
foreach ($langs as $key => $lang){
if ($key && $key % 3 === 0) {
$year;
}
echo $lang .' - '. $year . PHP_EOL;
}
uj5u.com熱心網友回復:
我會%3按照@mickmackusa 的建議使用,但我會避免增加日期物件的年份,因為在這里您只需要獲取年份編號并增加它(月/日/小時/等不是您需要的資訊保持):
$langs = ["PHP", "JAVA", "Ruby", "C", "C ", "Perl", 'foo', 'bar', 'bam'];
$year = Carbon::now()->year;
foreach ($langs as $key => $lang){
if ($key && $key % 3 === 0) {
$year ;
}
echo $lang .' - '. $year . PHP_EOL;
}
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/519808.html
上一篇:更新陣列內物件的特定值
下一篇:倒計時用戶輸入
