Amacınız mevcut çalışma dizini /clients/
de bölmek almak ve kullanıcı olup olmadığını görmek için
[something]/clients/[their username]/[something]
Örneğin, hedef giriş olacaktır:
cwd = "/volumes/raid0/www/clients/mikey/test_folder/"
$session->username = "mikey"
dönmek için
$authorized = true
Ben bu UNIX ve Windows yolları hem tanımak istiyorum, bu yüzden "/" veya "\" için bakmak gerekir. Bu dosya isimleri bu karakterleri içermez varsayılmıştır.
Ayrıca, isAdmin()
bit yöneticileri tüm dizinlere erişim vermek gerekiyordu.
Şu anda, PHP diyor ki:
Warning: unexpected regex error (8) in c:\apache\htdocs\clients\mikey\index.php on line 69
Burada bu haliyle kod. (Line 69 yorum not edilir.)
if($session->isAdmin())
{
$authorized = true;
}
else
{
// split cwd at the first instance of /clients/
$dir = spliti('%(\/|\\)clients(\/|\\)%',getcwd(),2); //this is line 69
if(count($dir) == 2) // if /clients/ was in cwd
{
// check if the second piece of cwd starts with the username.
$authorized = (preg_match('/^'.$session->username.'//*.$/', $dir[1]));
}
else
$authorized = false;
}