Dış dünya için erişilebilir fonksiyonu içinde Değişken

2 Cevap php

I raw bunu yapmanın bir yolu var mı çağırırken $ lastID erişimi var istiyorum?

public static $lastID;  
public function raw($sql){

    if(!$result = mysql_query($sql)){
        throw new Exception("Could not perform query: " .mysql_error());
    }

    self::$lastID = mysql_insert_id();
    return($result);

}

Edit: bir sınıf üyesi, bu statik.

2 Cevap

Içerik olarak net değil ama bunu kullanması gerektiğini sınıfın yöntemleri içinde erişmek için, bu durumda $ lastID bir sınıf memeber sanki görünüyor:

$this->lastID;

Ben senin kodunu görebilirsiniz diğer konu bu hat çalışmaz ki

self::$lastID = mysql_insert_id();

$lastID statik değil gibi. (Onun devlet sınıfının tüm nesneler paylaşılmış olacak durumda) beyan $lastID statik olarak ya da

//change this
var $lastID; 

//to this to declare $lastID as static
static $lastID;

Ya da $this-> yerine kullanmak self::

$this->lastID = mysql_insert_id();

Eğer ham içinde kullanmak zorunda

global $lastId;

Burada ilgili belgeler http://ca.php.net/manual/en/language.variables.scope.php bulunuyor