Мне действительно нужна помощь с этим ... я просто не могу заставить его работать.
Пока у меня есть этот кусок кода, и он работает нормально.Это ... восстанавливает все файлы в каталоге в соответствии с датой в их имени.
<?php
header('Access-Control-Allow-Origin: *');
$imagesDir = '';
$images = glob($imagesDir . '*.{jpg,jpeg,png,gif}', GLOB_BRACE);
$filteredImages = [];
foreach($images as $image) {
$current_date = date("Ymd");
$file_date = substr($image, 0, 8);
if (strcmp($current_date, $file_date)>=0)
$filteredImages[] = $image;
}
echo json_encode($filteredImages, JSON_UNESCAPED_UNICODE);
?>
Но теперь мне нужно отфильтровать эти файлы (возможно, еще до того, как этот код будет выполнен).в соответствии со строкой в их имени.
файлы именуются следующим образом:
yyyymmdd_xxxxxxx-xxxxxx~yyyymmdd.123456789.jpg
yyyymmdd_xxxxxxx-xxxxxx~yyyymmdd.9.jpg
yyyymmdd_xxxxxxx-xxxxxx~yyyymmdd.458.jpg
мне нужно отфильтровать только те, которые имеют определенное число в этой строке чисел в конце(между "."
и ".jpg"
) например.число 9
$number = 9
я пытался с помощью этого куска кода отделить только эту последнюю часть имени:
<?php
function getBetween($jpgname,$start,$end){
$r = explode($start, $jpgname);
if (isset($r[1])){
$r = explode($end, $r[1]);
return $r[0];
}
return '';
}
$jpgname = "yyyymmdd_xxxxxxx-xxxxxx~yyyymmdd.12789.jpg";
$start = ".";
$end = ".jpg";
$output = getBetween($jpgname,$start,$end);
echo $output;
?>
, и я думаю, мне понадобится STRIPOS во всем этом... но я сейчас потерян ...: (