[ Поиск ] - [ Пользователи ] - [ Календарь ]
Полная Версия: Область видимости
VeRTak
В ООП сделал бы так


public function setDirectory($dir, $append = FALSE)
{
if ($append !== TRUE OR empty($this->directory))
$this->directory = str_replace('.', '', trim($dir, '/')).'/';
else
$this->directory .= str_replace('.', '', trim($dir, '/')).'/';
}


На процедурке как провернуть подобное действие, не прибегая к global, что-то я сообразить не могу.

Мне надо в одном случае добавить в переменную в другом дописать.
VeRTak
Разобрался


function setDirectory($dir, $append = FALSE, $directory)
{
if ($append !== TRUE OR empty($directory))
return str_replace('.', '', trim($dir, '/')).'/';
else
return
$directory . str_replace('.', '', trim($dir, '/')).'/';
}


Корректно???
Игорь_Vasinsky
ещёж константы есть.

_____________
HTML, CSS (Bootstrap), JS(JQuery, ExtJS), PHP, MySQL, MSSql, Posgres, (TSql, BI OLAP, MDX), Mongo, Git, SVN, CodeIgnater, Symfony, Yii 2, JiRA, Redmine, Bitbucket, Composer, Rabbit MQ, Amazon (SQS, S3, Transcribe), Docker
VeRTak
Цитата (Игорь_Vasinsky @ 1.06.2016 - 10:09)
ещёж константы есть.


дэк у меня значение меняется в переменной постоянно
inpost
Wind
В процедурке вот так:
public function setDirectory($dir, $append = FALSE)
{
if ($append !== TRUE OR empty($this->directory))
$this->directory = str_replace('.', '', trim($dir, '/')).'/';
else
$this->directory .= str_replace('.', '', trim($dir, '/')).'/';
}
;)

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
VeRTak
inpost Были бы классы... Их нету smile.gif
inpost
Wind
Ты программист, напиши класс.

_____________
Обучаю веб-программированию качественно и не дорого: http://school-php.com
Фрилансер, принимаю заказы: PHP, JS, AS (видео-чаты). Писать в ЛС (Личные сообщения на phpforum).
VeRTak
inpost Да блин... Это понятно что можно написать, мне просто стало интересно как обойти все это. Понятное дело что класс можно написать. Сейчас подумал о том что можно сохранить локальную память, через static, или передать по ссылке. Сейчас за код сяду, посмотрю как сделать.

Суть вот в чем, данная функция вызывается три раза по коду + есть переменная directory, так вот в ней должно сохраниться значение, т.е не теряясь
Быстрый ответ:

 Графические смайлики |  Показывать подпись
Здесь расположена полная версия этой страницы.
Invision Power Board © 2001-2024 Invision Power Services, Inc.