php - 数组值字符串编辑和循环与其他数组和循环相结合

标签 php arrays

对于每个示例 1 标题和源 map 的一些出现

我做错了什么?

图像数组

$imgsArray = array(
  'image1-small.jpg', 'image1-medium.jpg', 'image1-large.jpg',
  'image2-small.jpg', 'image2-medium.jpg', 'image2-large.jpg',
  'image3-small.jpg', 'image3-medium.jpg', 'image3-large.jpg'
); // sometimes more pictures too

字幕数组

$imgCaption = array('Adam','Peter'); // if e.g. with 3 pictures only 2 captions are available then I get Notice: Undefined offset:

代码

foreach($imgsArray as $files => $img) {
  // important! $first_char. delete from hyphen to the last string
  $first_char = substr($img,0,strpos($img,"-"));
  ///
  if ($first_char != $last_entry) {
  echo '<p>This is '.$imgCaption[$files];
  echo '<ul>';
    echo '<li>'.$first_char.'-small.jpg</li>';
    echo '<li>'.$first_char.'-medium.jpg</li>';
    echo '<li>'.$first_char.'-large.jpg</li>';
    echo '<li>'.$imgCaption[$files].'</li>';
  echo '</ul>';
  echo '<i>Ciao, '.$imgCaption[$files].'</i><br>---</p>';
  }
  $last_entry = $first_char;
}

意外

这是亚当

  • image1-small.jpg
  • image1-medium.jpg
  • image1-large.jpg
  • Adam
再见,亚当
---

这是注意: undefined offset :3 英寸...

  • image2-small.jpg
  • image2-medium.jpg
  • image2-large.jpg
  • 注意:未定义的偏移:3 英寸...
再见,注意:未定义的偏移:3 英寸...
---

这是注意: undefined offset :3 英寸...

  • image3-small.jpg
  • image3-medium.jpg
  • image3-large.jpg
  • 注意:未定义的偏移:6 英寸...
再见,注意:未定义的偏移:3 英寸...

---

预期

这是亚当

  • image1-small.jpg
  • image1-medium.jpg
  • image1-large.jpg
  • Adam
再见,亚当
---

这是彼得

  • image2-small.jpg
  • image2-medium.jpg
  • image2-large.jpg
  • 彼得
再见,彼得
---

这是

  • image3-small.jpg
  • image3-medium.jpg
  • image3-large.jpg
  • Susi
再见,
---

最佳答案

你能试试我下面的代码吗

<?php
$imgsArray = array(
  'image1-small.jpg', 'image1-medium.jpg', 'image1-large.jpg',
  'image2-small.jpg', 'image2-medium.jpg', 'image2-large.jpg',
  'image3-small.jpg', 'image3-medium.jpg', 'image3-large.jpg'
);

$imgCaption = array('Adam','Peter','Susi');

$files = 0;

for( $i= 0; $i < count($imgsArray); $i=$i+3 ){
  if(!isset($imgCaption[$files])) break;
  $first_char = substr($imgsArray[$i],0,strpos($imgsArray[$i],"-"));

  echo '<p>This is '.$imgCaption[$files];
  echo '<ul>';
    echo '<li>'.$first_char.'-small.jpg</li>';
    echo '<li>'.$first_char.'-medium.jpg</li>';
    echo '<li>'.$first_char.'-large.jpg</li>';
    echo '<li>'.$imgCaption[$files].'</li>';
  echo '</ul>';
  echo '<i>Ciao, '.$imgCaption[$files].'</i><br>---</p>';

  $files++;
}

Demo link

关于php - 数组值字符串编辑和循环与其他数组和循环相结合,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/61155188/

相关文章:

php 复选框发送到 mysql

php - 将值 append 到多维数组 PHP

Python numpy 根据概率生成随机二进制值数组

javascript - 在 PHP 中查询 MongoDB 后,将每个符号分配给 Javascript 中的索引

php - Bootstrap 填充剩余的列

c - 如何创建常量结构数组?

arrays - 为数组中的每个字符串找到最小的唯一子字符串

c - 从C中的数组中删除负数

php - laravel localhost/public/index.php 不显示背景图片和 svg,但 "php artisan serve"显示它们

PHP。服务器级别的声明函数