Реклама на сайте Advertise with us

PHP:может ли включаемый include'ом скрипт узнать свое место?

Расширенный поиск по форуму
 
Новая тема Новая тема   
Автор
Поиск в теме:



С нами с 03.04.03
Сообщения: 586
Рейтинг: 75

Ссылка на сообщениеДобавлено: 30/05/06 в 20:36       Ответить с цитатойцитата 

Есть основной файл

main.php
<?
include "/dir1/file1.php";
?>

/dir1/file1.php содержит
<?
include 'configs/config.php';
?>

понятно, что в таком виде он работать не будет, т.к. исходный каталог - это каталог главного скрипта.

Можно ли сделать так, чтобы скрипт два вместе с подпапками можно было закачать в любую глубину сайта и после вызова его через инклуд он легко находил свои подпапки, откуда бы его не вызвали?

0
 



С нами с 16.04.05
Сообщения: 754
Рейтинг: 352

Ссылка на сообщениеДобавлено: 30/05/06 в 21:47       Ответить с цитатойцитата 

Только если ты ему передаш его место. (в параметрах вызова например, или в парамитрах создания класса).
Интерпретатор php передаёт текущим путь главного скрипта. (т.е. его можно узнать. А вот "где лежу физически Я" узнать , насколько я знаю, нельзя.

1
 



С нами с 03.04.03
Сообщения: 586
Рейтинг: 75

Ссылка на сообщениеДобавлено: 30/05/06 в 22:34       Ответить с цитатойцитата 

так и знал!
Спасибо.

0
 

www.phpdevs.com

С нами с 24.10.02
Сообщения: 16633
Рейтинг: 16105


Передовик Master-X (01.09.2005) Передовик Master-X (16.09.2005) Передовик Master-X (01.10.2005) Передовик Master-X (16.08.2006) Передовик Master-X (16.10.2006) Ветеран трепа Master-X ()
Ссылка на сообщениеДобавлено: 30/05/06 в 22:58       Ответить с цитатойцитата 

Код:

__LINE__ The current line number of the file. 
__FILE__ The full path and filename of the file. If used inside an include, the name of the included file is returned. Since PHP 4.0.2, __FILE__ always contains an absolute path whereas in older versions it contained relative path under some circumstances. 
__FUNCTION__ The function name. (Added in PHP 4.3.0) As of PHP 5 this constant returns the function name as it was declared (case-sensitive). In PHP 4 its value is always lowercased. 
__CLASS__ The class name. (Added in PHP 4.3.0) As of PHP 5 this constant returns the class name as it was declared (case-sensitive). In PHP 4 its value is always lowercased. 
__METHOD__ The class method name. (Added in PHP 5.0.0) The method name is returned as it was declared (case-sensitive). 

Вот эти константы тебе помогут
http://www.php.net/manual/ru/language.constants.predefined.php

Пишу на php/mysql/django за вменяемые деньги.
Обращаться в личку.

3
 



С нами с 03.04.03
Сообщения: 586
Рейтинг: 75

Ссылка на сообщениеДобавлено: 31/05/06 в 00:35       Ответить с цитатойцитата 

Спасибо Стек!
ТО что нужно!

0
 



С нами с 16.04.05
Сообщения: 754
Рейтинг: 352

Ссылка на сообщениеДобавлено: 31/05/06 в 03:13       Ответить с цитатойцитата 

Stek писал:
Код:

__LINE__ The current line number of the file. 
__FILE__ The full path and filename of the file. If used inside an include, the name of the included file is returned. Since PHP 4.0.2, __FILE__ always contains an absolute path whereas in older versions it contained relative path under some circumstances. 
__FUNCTION__ The function name. (Added in PHP 4.3.0) As of PHP 5 this constant returns the function name as it was declared (case-sensitive). In PHP 4 its value is always lowercased. 
__CLASS__ The class name. (Added in PHP 4.3.0) As of PHP 5 this constant returns the class name as it was declared (case-sensitive). In PHP 4 its value is always lowercased. 
__METHOD__ The class method name. (Added in PHP 5.0.0) The method name is returned as it was declared (case-sensitive). 

Вот эти константы тебе помогут
http://www.php.net/manual/ru/language.constants.predefined.php


Не знал icon_sad.gif

0
 
+ + +


С нами с 24.07.05
Сообщения: 169
Рейтинг: 88

Ссылка на сообщениеДобавлено: 31/05/06 в 04:28       Ответить с цитатойцитата 

Все намного проше:
$dir=dirname (__FILE__);

так узнаеш какая текушая папка где запушен текуший скрипт

0
 



С нами с 03.04.03
Сообщения: 586
Рейтинг: 75

Ссылка на сообщениеДобавлено: 31/05/06 в 10:57       Ответить с цитатойцитата 

да, так и сделал.!

0
 
Новая тема Новая тема   

Текстовая реклама в форме ответа
Заголовок и до четырех строчек текста
Длина текста до 350 символов
Купить рекламу в этом месте!


Перейти:  



Спонсор раздела Стань спонсором этого раздела!

Реклама на сайте Advertise with us

Опросы

Рецепт новогоднего блюда 2022



Обсудите на форуме обсудить (11)
все опросы »