Вопрос-Ответ по php

Печать RSS
6936
Кураторы темы:

J

Оранжевые штаны
0
5970. LyuciFerr, выполнять через консоль нужно php script.php str1 str2

вывод будет
$argv[0] = script.php
$argv[1] = str1
$argv[2] = str2
A

Пацак
0
Помогите с одним вопросом...
Дело в том что впервые решил попробовать mvc и все прочее, и переписывая свой скрипт столкнулся с проблемой.

Т.к. пришлось отказаться от глобальных переменных, прикрутил так называемый registry паттерн, вот тут и зарыта собака.
Раньше у меня настройки скрипта хранились в переменной (ассоц. массив, типа как в роторе) и я мог переписывать значение некоторых настроек как мне надо, типа там $set['value'] = 'newvalue';

но как это сделать теперь в registry по-умному? Переписать значение одиночной записи просто (хотя как смотрю часто защищают от записи переменные вообще), но речь о массиве ключ значение.
я вот не нашел ничего лучше как тупо добавить в registry функцию которая занимается конкретно заменой значения по ключу, подскажите это законно и насколько нормально?
просто из-за полной неопытности, сложности гугления данной инфы, чувствую что быдлокодю, а не хотелось бы.

Господин ПЖ
0
5972. Aid78, в патерне registry заведи метод set который будет переопределять исходные свойства

$set = Registry::get('setting');
$set['value'] = 'newvalue';
Registry::set('setting', $set); как-то так
A

Пацак
0
5973. Vantuz, о, спасибо.

еще вопрос, раньше по скрипту мог по много раз обращаться к одной и той же переменной например, но тогда она была тупо объявлена в начале и все, а теперь это получается каждый раз при обращении registry тягается, это не ресурсоемко?

может стоит один раз определять нужные данные, положив в переменные и дальше их использовать так (типа $set1 = Registry::get('set1'); ), или ничего не будет в плане скорости работы если много раз вызывать одну и ту же переменную в скрипте сразу через Registry::get?
R

Пришелец
0
5974. Aid78, экономия на спичках. Не бойся юзать.

Господин ПЖ
0
5974. Aid78, ну вообще я подразумевал что метод get будет вызываться 1 раз где-нибудь в шапке, а так конечно да лучше всего в это случае реализовать в методе get паттерн singleton чтобы при вызове метода несколько раз создавался только 1 экземляр объекта

Добавлено через 00:42 сек.
https://github.com/visavi/rotorcms/blob/master/app/classes/Registry.php
Л

Пришелец
0
Есть первый известный файл с названием, в нём содержится название второго файла, во втором название третьего и так далее , каким способом можно осуществить вывод всех названий на экран через какой нибудь цикл например while, for , foreach, чтоб не прописывать по 100 раз?

function GetContent ($name) { 

$file = file_get_contents ($name.'.txt'); 

return $file; 

} 

$f1 = GetContent ('Name_First_File.txt'); 
$f2 = GetContent ($f1); 
$f3 = GetContent ($f2); 
$f4 = GetContent ($f3); 
//... 
//... 
//... 
$f97 = GetContent ($f96); 
$f98 = GetContent ($f97); 
$f99 = GetContent ($f98); 

echo $f1 . '<br />'; 
echo $f2 . '<br />'; 
echo $f3 . '<br />'; 
//... 
//... 
//... 
echo $f97 . '<br />'; 
echo $f98 . '<br />'; 
echo $f99 . '<br />'; 


Господин ПЖ
0
Рекурсивный цикл в помощь

Добавлено через 09:09 сек.
<?php

function recursiveRead($filename) {
	if (file_exists($filename)){
		$file = trim(file_get_contents($filename));

		if (! empty($file)) {
			var_dump($file);
			recursiveRead($file);
		}
	}
}

recursiveRead('1.txt');

Прикрепленные файлы:
E

Пришелец
0
Здравствуйте. Хочу сделать на сайте модуль "Свидетельство о браке" но говорят что не как не сделать чтобы там автоматом вписывалось ники пользователей. Что запись делать надо только фотошопом.
Правда ли это?:-)

Господин ПЖ
0
Queen, ну почему же, найти шаблон, найти похожий шрифт и шрифтом по координатам. вписать данные вот и все, делов на 3-4 часа
Стикеры / Теги / Правила / Топ тем / Топ постов / Поиск