Просмотр полной версии : Помогите по иду
GiMli.GM
03.01.2010, 18:59
к примеру в папке есть много файлов формата .dat к примеру 1.dat , 2.dat, prim.dat, no.dat , ну много короче так вот как мне создать переменую значением которой будет имя файла без дат к примеру $id.dat//как сделать?
wildshaman
03.01.2010, 19:05
в дирнейм задаешь папку, которую сканить.
В массиву $ids будут айдишки твои- и мена файлов без расширения
<?
$dirname = 'Z:\home\test1.ru\www'; # (Указываем любой)
$files = scandir($dirname);
foreach($files as $file)
if(($file != ".")&&($file != "..")&&(substr($file, -3) == "php"))
$ids[] = substr($file,0,strpos($file,"."));;
print_r($ids);
?>
wildshaman
03.01.2010, 19:11
Ой я наркоман =(
Мы не ищем легких путей(с)
GiMli.GM
03.01.2010, 19:17
незнаю не пашет.....мне нужно это для того чтобы проверить if(@file(data/$id.dat)echo"Такого файла есть";else echo"Нет";/////так вот файл есть а оно пишет нет...чё за хрень.....
wildshaman
03.01.2010, 19:19
написал ненаркоманский варинт ^^
Гимли, ты пути к файлам верно указываешь? относительные\абсолютные и все такое
GiMli.GM
03.01.2010, 19:25
$dirname = 'Z:\home\test1.ru\www'; # (Указываем любой)
$files = scandir($dirname);
foreach($files as $file)
if(($file != ".")&&($file != "..")&&(substr($file, -3) == "php"))
$ids[] = substr($file,0,strpos($file,"."));;
print_r($ids);
чёто не видно значения $file....
wildshaman
03.01.2010, 19:27
$dirname = 'Z:\home\test1.ru\www'; # (Указываем любой)
$files = scandir($dirname);
foreach($files as $file)
if(($file != ".")&&($file != "..")&&(substr($file, -3) == "php"))
$ids[] = substr($file,0,strpos($file,"."));;
print_r($ids);
чёто не видно значения $file....
$file при переборе - значение ключа массива файло. В массиве ids все будут.
как тебе надо для определения наличия\отсутствия файла:
<?
$file = 'Z:\home\test1.ru\www\{$id}.dat'; #путь до файла
echo (is_file($file))?"да":"нет";
?>
GiMli.GM
03.01.2010, 19:27
Так вот у меня $file занято, а ты его указал без значения.....
GiMli.GM
03.01.2010, 19:29
$dir = opendir ("data/kat/");
while ($file = readdir ($dir))
{
if (( $file != ".") && ($file != ".."))
{
$id=str_replace(".dat","",$file);///Что если так?
wildshaman
03.01.2010, 19:30
присмотрись - в цикле foreach есть слово $file ...
Я тебе там код написал для определения наличия или отсутсивтя файла. Если существует файл с указанным путем ($id подставляешь свои как тебе и надо) -выдаст "да" иначе - "нет"
vBulletin® v3.8.14, Copyright ©2000-2026, vBulletin Solutions, Inc. Перевод: zCarot