2010-05-18 3 views
0

많은 함수가 포함 된 파일을 포함/포함하는 페이지가 있습니다.임베디드 함수에서 페이지의 조건부로 전달 값 임베디드 함수가 포함되어 있습니다.

함수 중 하나에 파일이 포함 된 페이지로 다시 전달하려는 변수가 있습니다. functions.php에서

<?php 
include('functions.php'); 

userInGroup(); 

if($user_in_group) { 
print 'user is in group'; 
} else { 
print 'user is not in group'; 
} 
?> 

기능

<?php 
function userInGroup() { 
foreach($group_access as $i => $group) { 
    if($group_session == $group) { 
    $user_in_group = TRUE; 
    break; 
    } else { 
    $user_in_group = FALSE; 
    } 
} 
}?> 

에 조건부 경우 ($의 user_in_group)를 실행 내가 다시 페이지로 기능 userInGroup에서 값을 전달할 수있는 방법으로 나는 확실하지 오전

도움을 주시면 감사하겠습니다. 업데이트 :

저는 userInGroup (array ("STAFF", "STUDENTS", "FACULTY"))입니다.

$user_in_group = userInGroup(); 

function userInGroup() { 
foreach($group_access as $i => $group) { 
    if($group_session == $group) { 
    $user_in_group = TRUE; 
    break; 
    } else { 
    $user_in_group == FALSE; 
    } 
} 

return $user_in_group; 
} 

는 return 문을 사용하여 다음

<?php 
function userInGroup($group_access) { 
    session_start(); 
    if(isset($_SESSION['user_session'])) { 
     $username = $_SESSION['user_session']; 
     $group_session = $_SESSION['group_session']; 
     $user_full_name = $_SESSION['user_full_name']; 

     foreach($group_access as $i => $group) { 
      if($group_session == $group) { 
       $user_in_group = TRUE; 
       break; 
      } else { 
       $user_in_group = FALSE; 
      } 
     } return $user_in_group; 
    } else { 
     print 'not logged in'; 
    } 
?> 

답변

2

가장 쉬운 방법입니다

.

+0

, 그냥 내가 달성하기 위해 노력했다 예제로 사용했다. 예를 들어 userInGroup()을 통해 값을 전달하고 있습니다. userInGroup (array ("STAFF", "STUDENTS", "FACULTY")); – Brad

+0

귀하의 기능이 완전히 잘못되었습니다. 상태를 반환하고 네임 스페이스를 오염시키지 않아야합니다. 2; 사용자가 로그인 한 모든 기능을 점검합니까? 너는해서는 안된다. – erenon

+1

당신의 업데이트를 읽었을 때, 여전히 함수가 어떤 것을 리턴하도록해야합니다. – Galen

0

당신은 하나의 작은 수정하여 원래의 기능을 사용할 수 있습니다 :

내 코드가 설정되지 않은 방법을 정확하게
<?php 
function userInGroup() { 
**global $user_in_group;** 
foreach($group_access as $i => $group) { 
    if($group_session == $group) { 
    $user_in_group = TRUE; 
    break; 
    } else { 
    $user_in_group = FALSE; 
    } 
} 
}?> 
+0

전역으로 설정해도 문제가 해결되지 않았습니다. – Brad