PHPFAQ  
Начинающим   Технологии   MySQL   Ошибки   Ссылки   Юмор   О сайте   Форум   PHP Club  
-- Список сообщений -- Поиск --
Как правильно обратиться к Функции из другого РНР ??
Макс 12.12.08 02:09
Есть два РНР... скажем INDEX.PHP и FUNC.PHP

INDEX грузится, и выдает список файлов.. При выдаче результата нужно обратиться к функции GetFileSize из FUNC.PHP... передать в нее имя какого-то файла, а она должна вернуть число (размер)... делаю так:

INDEX.PHP
....
$file="kursy.rar";
include './files/func.php';
echo round($fs/1024,2);
....


FUNC.PHP
....
$p="./progs/";
$pf=$p.$file;
if ( @file_exists($pf) ){
$fs=@filesize($pf);
echo "File (".$pf.") exist! ";
}else{
$fs=0;
}
....

Проблема в том, что FUNC.PHP не видит файла!!! Пишу эту функцию в ИНДЕКСЕ - работает! Как правильно обращаться к функциям других РНР??? Подскажите!!!
ответить
phpfaq 12.12.08 03:19
Определись

что у тебя не видит пхп - функцию или файл
ответить
Макс 12.12.08 15:59
----

Если таким образом обращаюсь, то FUNC.PHP не видит файл при запросе file_exists($pf) ... возвращает FALSE... может это как-то по-другому всё оформить? Грамотнее код можно составить?

а если будет написано следующим образом?
FUNC.PHP
....
function GetFileSize($file) {
$p="./progs/";
$pf=$p.$file;
if ( @file_exists($pf) ){
return @filesize($pf);
}else{
return 0;
}
}
....

то как правильно обращаться и передавать $file ???
$r=include_GetFileSize('./files/func.php');

Так? но как передать $file ?


Прошу написать код! Заранее благодарен!
ответить
phpfaq 12.12.08 20:14
на этом сайте есть ответ на этот вопрос

в разделе для начинающих.
Рекомендуется к прочтению.
ответить
Max 09.01.09 23:07
e-mail

Облазил всё... не написано КАК вызывать функцию (обращаться к ней) из другого РНР и задавать ей значение...

Ну подскажите, уважаемый! (:о(
ответить
phpfaq 09.01.09 23:09
если я правильно понял

то тебе нужен оператор include
ответить
Max 31.01.09 19:02
e-mail

INDEX грузится, и выдает список файлов..
При выдаче результата (при переборе файлов) нужно обратиться к функции GetFileSize из FUNC.PHP... передать в нее имя файла, а она должна вернуть число (размер)...

а как через INCLUDE вызвать функцию GetFileSize да еще и передать в нее значение (имя файла) ?
(:о(
ответить
phpfaq 31.01.09 19:09
почитай какой-нибудь учебник

я даже проблем твоих не понимаю.
вопрос твой зучит примерно так "Как мне с помощью вилки взять ложку? Я хочу поесть борща".
ответить
ivan1986 31.01.09 22:03
мдя

Блин, так и обращаться.

За исключением корявейшего кода вызов более менее нормальный.
Однако вы на указали что выводится, не проверили вообще что вы передаете и все такое
Знаете есть замечательный оператор echo который в частности выводит значения переменных.

откуда взялся этот бред? include_GetFileSize
Вы вообще понимаете принцип работы include?
ответить
Max 01.02.09 14:31
e-mail

дык и увидел ЭТО в php.net так что я ступоре!

Я не знаю еще как объяснить!
Есть 2 файла: index.php и func.php (куда насобирал всяких функций, чтоб не совать эти функции в каждый index.php, в каждой папке)...

Берем один index.php, чтоб разобрать пример...
В этом Индексе берется каталог с файлами и получаем список их... При получении имени файла, нужно перед его выводом в таблицу получить его размер, функция получения которого есть в файле FUNC.PHP !!! Так вот! Нужно передать имя файла в функцию GetFileSize() из FUNC.PHP ... а эта функция вернет через echo размер указанного файла!

Блин, ну как еще объяснить?!
ответить
phpfaq 01.02.09 15:09
все равно не понимаю

ты не знаешь, как к функции обратиться?
читай http://ru.php.net/manual/ru/functions.user-defined.php
ответить
ivan1986 07.02.09 21:35
ы

Ты представляешь, как работает include?

include просто включает содержимое файла в место своего вызова

нужно примерно так

func.php:

....
function GetFileSize($file) {
$pf="./progs/".$file;
if ( @file_exists($pf) )
return @filesize($pf);
else
return 0;
}
....

index.php:

include './files/func.php';
$file="kursy.rar";
echo round(GetFileSize($file)/1024,2);
ответить
Написать
Имя:*
Заголовок:*
Вы робот?
Текст:
Пожалуйста, воздержитесь от посылки спама.
Сообщения, содержащие гиперссылки, проходят премодерацию.

© phpfaq.ru, 2010
Rambler's Top100 0.012 sec.