Class ile ilgili çok basit bir soru.
Selam arkadaşlar,
class_dosyasi.php diye bir dosyam var, burada sisteme ait fonksiyonlar mevcut ve aynı zamanda
class_olmayan.php diye bir dosyam var, öncelike class_dosyasi.php 'yi include diyerek çağırıyorum ve burada bazı işlemleri yapıyorum. Mesala $degisken diye bir değişken var (class_olmayan.php dosyasında) bu değişkeni, class_dosyasi.php 'de kullanmak için ne yapmalıyım değişken önüne public dediğimde hata veriyor, global dediğimde boş sayfa veriyor. (hata gösterim modları açık) ikinci dosyayı class 'a çevirmeden hızlı bir şekilde bu işlemi nasıl yapabilirim acaba?
Php
ortak.php diye bir dosya oluşturup bu iki dosyayıda include ederek. ortak.php dosyasında kullanabilirsiniz.
örnek;
include 'class.php';
include 'classolmayan.php';
işlemler........
şeklinde kullanırsınız.
Php
hocam peki, değişkeni normal tanımladığımda: aşağıdaki hataları veriyor class dosyasında, değişken önüne bir ön ek yazmam falan gerekir mi ? ya da farklı bir yöntem var mıdır?
Notice: Trying to get property of non-object in
Notice: Undefined variable: abc_r in
Notice: Undefined variable: KOD in
Php
class içinde bir değişken tanımlıcaksanız;
Değişkene dışardan müdahale etmek isterseniz Public $degisken;
Değişkene dışardan müdahale istemiyorsanız Private $degisken;
Değişkene sadece extends sınıflar müdahale edilebilsin isterseniz protected $degisken;
şeklinde önüne ek koymanız iyi olur.
var $degisken şeklinde tanımlama ile public $degisken şeklinde tanımlamada aynı işi görür.
ve eğerki bir class yada fonksiyon içerisinde dışardan bir değişken kullanmak isterseniz Global $degisken; şeklinde ilgili fonksiyonun içerisinde kullanmanız yeterlidir
Php
hocam teşekkür ederim stediğim bu:
ve eğerki bir class yada fonksiyon içerisinde dışardan bir değişken kullanmak isterseniz Global $degisken; şeklinde ilgili fonksiyonun içerisinde kullanmanız yeterlidir
fakat global $KOD dediğimde direk boş sayfa geliyor ve hata gösterim modları açık olmasına rağmen bu durumda hata vermiyor maalesef :(
Php
$kod = 'Merhaba';
class a
{
public function kod()
{
Global $kod;
echo $kod;
}
}
$k = new a;
$k->kod(); // ekrana merhaba yazar.
Bu örnek şekildeki gibimi kullanıyorsunuz ?
Not: fonksiyon içerisinde kullanılcak global değişkenin fonksiyondan daha önce tanımlanmış olması gereklidir.