У меня есть что-то вроде этогоГлобальные переменные в классах Laravel 4
class Unilevel {
public $contador = 2;
public static function listarLevels($user_id){
if($contador <= 5){
echo '<h1>Nivel '.$contador.'</h1>';
$user = DB::table('matrices')->where('id_user', $user_id)->first();
$actual_user = DB::table('users')->where('id', $user->id_user)->first();
echo $actual_user->username.'<br>';
}
$contador++;
}
}
Функция не работает, но если я ставлю переменную $ Контадор внутри listarLevels работает , которая является проблемой? Спасибо
Да, но я знаю, но, например, это не работает: contador; \t $ this-> contador = 2; $ user = DB :: table ('matrices') -> где ('id_user', $ user_id) -> first(); $ actual_user = DB :: table ('users') -> где ('id', $ user-> id_user) -> first(); echo $ actual_user-> имя пользователя. '
'; , если ($ пользователю) { \t \t \t, если ($ user-> left_direct) { \t \t \t listarLevels ($ user-> left_direct); \t \t} \t} еще { \t \t эхо 'Ninguno'; \t} \t} \t } ?> – Roberto
Это потому, что это статическая функция. Статические функции не имеют доступа к '$ this'. – user3158900
Если вы сделаете это 'public static $ contador = 1;', то в вашей статической функции вы можете «echo static :: $ contador;», и она должна работать. – user3158900