|
|
|
|
|
для: cheops
(05.08.2006 в 23:46)
| | Oops!
Значит я ошибся на счет нуля. Досадно! | |
|
|
|
|
|
|
|
для: Igorel
(06.08.2006 в 00:48)
| | Чуть по другому в IP-адресе 4 разряда и используются десятичные числа. Тут испольуется восьмиричная система счисления, т.е. цифр в одном разряде не 10 (от 0 до 9), а 8 (от 0 до 7). | |
|
|
|
|
|
|
|
для: cheops
(05.08.2006 в 23:46)
| | Спасибо всем за информацию. Только ещё уточняющий вопрос возник. Для меня то, что описал Holsten Bier совсем новое, но я как-то расчитывал IP с вида 001,002,003,004 к виду ********* (10 знаков) путём 001*256*256*256 + 002*256*256 + 003*256 + 0. Всё совпадало - у меня была возможность проверить. Вопрос вот в чём: приведённый Holsten Bier пример тоже самое или нет ? Если нет, то что я делал ? | |
|
|
|
|
|
|
|
для: Igorel
(05.08.2006 в 11:54)
| | Нет, 0 в начале означает лишь то, что число является восьмеричным менять его на 1 нельзя ни при каких обстоятельствах. | |
|
|
|
|
|
|
|
для: Igorel
(05.08.2006 в 14:10)
| | Похоже на то, но я не знаком с форматом данных, которые возвращает fileperms().
В Винде права задать не получится. (см. сообщение koder'a ниже)
На предыдущий вопрос о преобразовании чисел: функция decoct("decimal") (из дес в восьм), octdec("octal") - обратная первой.
Для того, чтобы получить отдельные разряды (в таком порядке [4][d][ow][g][o], где [4] - наш неопознанный разряд, d - бит файл/каталог, ow - разряд владельца, g - разряд группы, o - разряд всех остальных)
<?php
# $dec - десятичное число или строка, представляющая десятичное число
# применяем битовую маску 0x7 для получения восьмеричного представления
$o = $dec & 0x7;
$g = ($dec >> 3) & 0x7;
$ow = ($dec >> 6) & 0x7;
$d = ($dec >> 9) & 0x7;
?>
|
| |
|
|
|
|
|
|
|
для: Holsten Bier
(05.08.2006 в 04:17)
| | Заход второй:
>16895 (десятеричное) = 40777 (восьмеричное)
>16749 = 40555
>что-то напоминает ;)
Похоже только одно: 4 - четыре числа, следующих далее; из них: 0 - означает что права для каталога, 777 сами права.
...?!?... Так ? или я брежу ? | |
|
|
|
|
|
|
|
для: Holsten Bier
(05.08.2006 в 04:17)
| | Что-то я совсем запутался :(
>0/1 - бит файл/каталог,
Это если пишем 777, то принимается как 0777, т.е права для файла, а если пишем 1777, то права для каталога (папки) ?
>16895 (десятеричное) = 40777 (восьмеричное)
>16749 = 40555
>что-то напоминает ;)
Напоминает. Только ни фига у меня не получилось :(( Плиз можно примерчик как правильно десятичные и восмеричные числа раскладывать.
>fileperms() не работает с удаленными файлами
Всё в пределах одного сайта. | |
|
|
|
|
|
|
|
для: Igorel
(04.08.2006 в 22:57)
| | На ХР нет такого понятия, как права доступа. Кликнув на любом файле правой кнопкой и выбрав свойства, увидим, что есть лишь атрибуты: системный, скрытый и т.д. | |
|
|
|
|
|
|
|
для: Igorel
(05.08.2006 в 03:40)
| | Точно ничего подсказать не могу. Сделаю несколько замечаний, которые может быть наведут вас на правильные мысли. Права доступа задаются восьмеричными числами.
0777
0/1 - бит файл/каталог, 7 - права владельца, 7 - права пользователей группы, к кторой принадлежит владелец файла/каталога, 7 - права всех остальных.
Для последних трех:
0 - нет доступа
1 - на выполнение
2 - на запись
4 - на чтение
то есть
7 = 4 + 2 + 1 - чтение, запись, выполнение
5 = 4 + 1 - чтение выполнение
16895 (десятеричное) = 40777 (восьмеричное)
16749 = 40555
что-то напоминает ;)
fileperms() не работает с удаленными файлами, т. к. они должны быть доступны в локальной файловой системе (PHP Manual)
Не уверен, что в Винде это работает
PS переходите на FreeBSD :) | |
|
|
|
|
|
|
|
для: Igorel
(04.08.2006 в 23:52)
| | Уф... Прежде чем права выставлять надо проверить есть ли такая папка. Это я нашёл. Попробовал (на localhost, Денвер-2) выставить права и проверить, получил 16895 Причём при любом значении CHMOD('путь_к_папке', ????), кроме 777. При CHMOD('путь_к_папке', 777) получаю число 16749. Как не пытался это число разложить, ни чего не выходит. Не могу дотумкать что с ним сделать надо что б 777 получить. Объясните плиз почему у меня на локалке лабуда такая. Я подозреваю из-за того, что операционка Windows ? И скажите в каком формате fileperms ( string filename ) права доступа выдаёт и как его в четырёхзначное число привести. Спасибо. | |
|
|
|
|