php beklenmedik T_VARIABLE, biraz yardım

2 Cevap php

Hey orada. Ben aşağıdaki kodu var:

class user {

  //URLs
  private static $signInURL = $_SERVER['DOCUMENT_ROOT'].'/?page=signin';

  ...
  ...
  ...

Ve ben olsun

ve beklenmedik T_VARIABLE hatası.

Birisi nasıl olduğunu url oluşturmak için bu yüzden bana bir hata vermeyecektir bana söyleyebilir?

2 Cevap

Orada bir değişken kullanamazsınız, bir yönteme içine hareket etmelidir. Class Kullanıcı yaklaşık $ _SERVER bilmek var gibi zaten kötü tarzı var.

Eğer gerçekten, gerçekten bu şekilde isterseniz kullanabilirsiniz:

private static $signInURL = '';

public static getSignInUrl()
{
  if (User::$signInUrl == '') User::$signInUrl = $_SERVER....;
  return User::$signInUrl;
}

Ben kullanmanızı öneririz:

class User
{
  private static $signInUrl = '/signin';

  public static getSignInUrl($base)
  {
    return $base . User::$signInUrl;
  }
}

Sen sınıfı özelliklerinin değeri olarak değişkenleri koyamazsınız. Deneyin,

class a
{
 private $signInURL;
 public function __construct()
 {
  $this->signInURL = $_SERVER['DOCUMENT_ROOT'].'/?page=signin';
 }
}