Чем заменить posix_geteuid() ?

Nand

Guest
Чем заменить posix_geteuid() ?

Попытался перенести сайт с хостинга на локал и столкнулся с ошибкой: Fatal error: Call to undefined function: posix_geteuid() in... , локаль: 2003 standart+денвер, исследования привели к тому что под win эти (posix) функции не работают. Чем их можно заменить?
 

svetasmirnova

маленький монстрик
Во-первых, можно попытаться под cygwin собрать. А во-вторых, написать mock. Примерно так, как реализовано в PEAR_PHPCompat.
 

Nand

Guest
А заменить нельзя? Паралельно задал вопрос на ru-board:
" для php

function posix_geteuid()
{
return 0;
}
но это не гарантирует работоспособность скриптов."

"первую функцию перепиши как тебе уже сказали, а posix_getpwuid что то вроде этого:

function posix_getpwuid($id)
{
return array('dir'=>"path/to/.mysqlpasswd', 'name' => 'user_name');
}"

Речь идет о функции: функция читает файл .mysqlpasswd в директории пользователя под которым запущен процесс и возвращает пароль и имя пользователя для доступа к базе на заданном в параметре хосте

function mysql_login($mysql_host)
{
$uid=posix_geteuid();
$info=posix_getpwuid($uid);
$dir=$info["dir"];
$name=$info["name"];

дальше обработка полученных значеий.
 

svetasmirnova

маленький монстрик
Ну да, я именно что-то подобное и имела в виду: всё равно на Windows этих возможностей нет.
 
Сверху