djnack
2 سال پیش توسط djnack مطرح شد
5 پاسخ

مسیر فراخوانی کلاس

سلام.
در زبان php
یک کلاسی در یک فایلی فراخوانی و اجرا شده.میخوام داخل خود کلاس بفهمم که این کلاس از کجا (مسیر) اجرا شده.
با
getclass
فقط مسیر خود کلاس رو میده.
من مسیر فایلیو میخوام که اجرا کننده این کلاسه.


ثبت پرسش جدید
djnack
@Dj.nack666 2 سال پیش مطرح شد
0

دوستان ممنون که سعی کردین کمکم کنین.
جوابو خودم پیدا کردم.
debug_backtrace()
خروجیش آرایست.از داخل آرایه چیزی که مد نظرم بود رو استخراج کردم.


ماهان ملک جاری
تخصص : برنامه نویسی تحت وب / backend...
@MrMahan1392 2 سال پیش مطرح شد
djnack
@Dj.nack666 2 سال پیش مطرح شد
0

سلام.دوست عزیز.php
داخل متن اضافه کردم.


پرهام ناصحی
تخصص : بک‌اند کار
@parhamdeveloper 2 سال پیش آپدیت شد
0

سلام

ببین کمکت میکنه :

<?php
/**
نام کلاس شما : directMe
 */

class directMe {
    function getClass() {
        // اسم فایلی که کلاس در آن قرار دارد
        $fileName = "test.php";
        return __DIR__ . "/" . $fileName ;
    }
}

$test = new directMe();
echo $test->getClass();
/**
 * خروجی : D:\xampp\htdocs\directory/test.php
 */

اگر هم میخواید که بدون اسم فایل باشه این کد شاید کمکتون کنه

<?php
class directMe {
    function getClass() {
        return __DIR__ ;
    }
}

$test = new directMe();
echo $test->getClass();
/**
 * خروجی : D:\xampp\htdocs\directory
 */

پرهام ناصحی
تخصص : بک‌اند کار
@parhamdeveloper 2 سال پیش آپدیت شد
0

ببخشید تازه فهمیدم چی گفتید

کد :

<?php

/**
نام کلاس شما : directMe
 */

class directMe {
    function getClass() {
        $fileName = $_SERVER['SCRIPT_FILENAME'];
        return $fileName ;
    }
}

$test = new directMe();
echo $test->getClass();

// output : مسیر فایلی که کلاس در آن اجرا شده

djnack
@Dj.nack666 2 سال پیش مطرح شد
0

دوستان ممنون که سعی کردین کمکم کنین.
جوابو خودم پیدا کردم.
debug_backtrace()
خروجیش آرایست.از داخل آرایه چیزی که مد نظرم بود رو استخراج کردم.


برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام