[PHP] - не велосипед ли изобретаю?

И всё прочее, что касается HTML
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

[PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение Alex Keda » 2008-05-28 20:39:04

сабж. Может оно уже давно есть и универсальней быстрей?
Или можно это попроще переписать?

Код: Выделить всё

// функция преобразования из одной валюты в другую.
function	convert_currency_rate($sourse,$destination,$currency){	// открытие функции преобразования валюты
	// 1 - рубли
	// 2 - евры
	// 3 - долляры
	
	// перебираем варианты.
	if($sourse == $destination){	// исходная валюта совпадает с окончательной. просто вертаем сумму
		return $currency;
	}elseif($sourse == 1 && $destination == 2){		// исходная валюта - рубли - назначение - евры.
		return $currency/$GLOBALS['rate_euro'];
	}elseif($sourse == 1 && $destination == 3){		// исходная валюта - рубли - назначение - долляры
		return $currency/$GLOBALS['rate_usd'];
	}elseif($sourse == 2 && $destination == 1){		// исходная валюта - евры  - назначение - рубли
		return $currency * $GLOBALS['rate_euro'];
	}elseif($sourse == 2 && $destination == 3){		// исходная валюта - евры  - назначение - долляры
		return ($currency * $GLOBALS['rate_euro'])/$GLOBALS['rate_usd'];
	}elseif($sourse == 3 && $destination == 1){		// доллары --> рубли
		return $currency * $GLOBALS['rate_usd'];
	}elseif($sourse == 3 && $destination == 2){		// доллары --> евры
		return ($currency * $GLOBALS['rate_usd'])/$GLOBALS['rate_euro'];
	}else{							// ошибка. неизвестный вариант
		return "Ошибка преобразования валюты!";
	}							// закрытие - неизвестный вариант

}	// закрытие функции преобразования валюты
Убей их всех! Бог потом рассортирует...

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
ProFTP
подполковник
Сообщения: 3388
Зарегистрирован: 2008-04-13 1:50:04
Откуда: %&й
Контактная информация:

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение ProFTP » 2008-05-29 0:25:15

а разве есть разница в скорости? елси есть то навреное 1% еще можно: switch, хэш (сгенерирвоать текущую валюту только)
Pеrl FAQ
perl -e 'print join"",map $$_[rand@$_],([0..9,'a'..'z','A'..'Z'])x30'
ИзображениеИзображение

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение zg » 2008-05-29 7:51:28

lissyara писал(а):Или можно это попроще переписать?
можно

Код: Выделить всё

<?

// Список валют
define('MONEY_RUB', 1);
define('MONEY_USA', 2);
define('MONEY_EUR', 3);

// Курсы валют в рублях
$rate = array(
	MONEY_RUB => 1,
	MONEY_USA => 26.90,
	MONEY_EUR => 37.50,
);

echo 'Рубли в доллары: 36р = ', convert_currency_rate(36, MONEY_RUB, MONEY_USA), '$', PHP_EOL;
echo 'Доллары в рубли: 50$ = ', convert_currency_rate(50, MONEY_USA, MONEY_RUB), 'р', PHP_EOL;
echo 'Евро в доллары : 11e = ', convert_currency_rate(11, MONEY_EUR, MONEY_USA), '$', PHP_EOL;

/**
 * Функция переводит сумму денег из одной валюты в другую
 *
 * @param float $sum Сумма
 * @param int $sour Исходная валюта MONEY_
 * @param int $dest Конечная валюта MONEY_
 */
function convert_currency_rate($sum, $sour, $dest)
{
	global $rate; // Этого делать не рекомендуется!!!
	
	// Высчитываем результат
	return round($sum * $rate[$sour] / $rate[$dest], 2);
}

?>
========
Рубли в доллары: 36р = 1.34$
Доллары в рубли: 50$ = 1345р
Евро в доллары : 11e = 15.33$

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение zg » 2008-05-29 7:57:50

ProFTP писал(а):а разве есть разница в скорости? елси есть то навреное 1% еще можно: switch, хэш (сгенерирвоать текущую валюту только)
тут логическая ошибка, нужно исправлять логику работы

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение Alex Keda » 2008-05-29 8:07:51

ну, что у меня криво - это понятно, но у вас-то - вначале вызов функции а потом её определение....
ужос нах....
==========
хотя код красивый.
Убей их всех! Бог потом рассортирует...

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение zg » 2008-05-29 8:10:45

lissyara писал(а):но у вас-то - вначале вызов функции а потом её определение....
функции и классы, которые определены вне классов и функций объявляются на стадии проверки сиснтаксиса, до любого выполнения кода
lissyara писал(а):хотя код красивый.
не сразу он таким стал ))))

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение Alex Keda » 2008-05-29 8:19:01

zg писал(а):
lissyara писал(а):но у вас-то - вначале вызов функции а потом её определение....
функции и классы, которые определены вне классов и функций объявляются на стадии проверки сиснтаксиса, до любого выполнения кода
я знаю. помоему даже в сях уже такое можно - компилятор материться но компилит.
однако, если рассуждать число логически - то это через одно место и логически неверно.
Убей их всех! Бог потом рассортирует...

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение zg » 2008-05-29 8:24:43

lissyara писал(а):однако, если рассуждать число логически - то это через одно место и логически неверно.
ну давай порассуждаем =)))
1. писать нужно по правилам компилятора/интерпритатора
2. правила позволяют описывать функции и классы в любом месте файла, поскольку структурно это ни на что не влияет
3. классы и функции всегда рекомендуется выносить за основной код, посколько это улучшает читабельность кода и не разрывает его

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение Alex Keda » 2008-05-29 8:29:37

а include/require/... уже отменили?
код разбитый на куски и файлы читается ещё лучше, если разбивка идёт по логическим частям.
=========
про вынос в конец кода, изврат какой-то.
наверно спьяну в доку написали...
логика должна быть - иначе программизм в маразм превратиться...
Убей их всех! Бог потом рассортирует...

Аватара пользователя
hizel
дядя поня
Сообщения: 9032
Зарегистрирован: 2007-06-29 10:05:02
Откуда: Выборг

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение hizel » 2008-05-29 8:41:15

lissyara писал(а): про вынос в конец кода, изврат какой-то.
наверно спьяну в доку написали...
логика должна быть - иначе программизм в маразм превратиться...
зачем на человека нервничаешь, все вполне логично и удобно ;)
сверху основа, что собственно в этом куске сырца делается
а внизу, шоб не отвлекать, вспомогательные функции
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35462
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение Alex Keda » 2008-05-29 9:04:32

применительно к данному случаю - это основное в чём был вопрос =)
=======
я не нервничаю - просто логика в таком подходе какая-то странная...
по типу неевклидовой геометрии - кто-то же её понимает =)
А мен не давалась - ибо обычную геометрию я на ура понимаю =)
Убей их всех! Бог потом рассортирует...

jeehadina
мл. сержант
Сообщения: 93
Зарегистрирован: 2008-04-07 8:59:20

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение jeehadina » 2008-05-29 11:54:43

gz, (оффтом) а ты чем комменты парсишь потом?
я не баба, я - мужик...
(это чтоб никто не путал)

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение zg » 2008-05-29 12:00:09

jeehadina писал(а):gz, (оффтом) а ты чем комменты парсишь потом?
я zg - ZlobnyGrif =))) парсит phpDoc, когда документацию подготавливает, эта встроенная фича зенд студии, он кстати валидно это всё дело обрабатывает и выдаёт списки доступных свойств, методов, аргументов и т.д.
zde.png

jeehadina
мл. сержант
Сообщения: 93
Зарегистрирован: 2008-04-07 8:59:20

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение jeehadina » 2008-05-29 12:27:28

zg писал(а):
jeehadina писал(а):gz, (оффтом) а ты чем комменты парсишь потом?
я zg - ZlobnyGrif =))) парсит phpDoc, когда документацию подготавливает, эта встроенная фича зенд студии, он кстати валидно это всё дело обрабатывает и выдаёт списки доступных свойств, методов, аргументов и т.д.
ok, zg ))).
дело в том что я тоже phpDocumentor использую.
но я как-то не нашел способа с utf-8 его подружить.
так и мучаюсь, мля, коменты на буржуйском пишу :D
я не баба, я - мужик...
(это чтоб никто не путал)

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение zg » 2008-05-29 12:40:01

jeehadina писал(а):но я как-то не нашел способа с utf-8 его подружить.
так и мучаюсь, мля, коменты на буржуйском пишу :D
да я не особо с этим phpDoc разбирался, но дока генерится нормально (через раз, правда), значит как-то зендовцы его прикрутили, юзай зенд студию и не мучайся ))) пожизненная лицензия на ZS5,6 всего 300 буржуйских рублей стоит

Аватара пользователя
krilya
мл. сержант
Сообщения: 106
Зарегистрирован: 2008-03-11 4:42:29
Откуда: Комсомольск-на-Амуре

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение krilya » 2008-06-01 11:40:52

zg писал(а):парсит phpDoc, когда документацию подготавливает, эта встроенная фича зенд студии, он кстати валидно это всё дело обрабатывает и выдаёт списки доступных свойств, методов, аргументов и т.д.
вообще говоря это не фича Zend'a а вполне самостоятельный продукт :)
jeehadina писал(а):дело в том что я тоже phpDocumentor использую. но я как-то не нашел способа с utf-8 его подружить. так и мучаюсь, мля, коменты на буржуйском пишу :D
думаю стоить попробовать создать файл .htaccess и добавить туда "AddDefaultCharset utf-8", ну и не лишним будет обновить версию http://www.phpdoc.org/downloads.php

zg
полковник
Сообщения: 5845
Зарегистрирован: 2007-12-07 13:51:33
Откуда: Верх-Нейвинск

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение zg » 2008-06-01 12:28:49

krilya писал(а):вообще говоря это не фича Zend'a а вполне самостоятельный продукт :)
ну как бы да :) фича - мастер, который позволяет легко и просто генерить доку
phpdoc.PNG

Аватара пользователя
krilya
мл. сержант
Сообщения: 106
Зарегистрирован: 2008-03-11 4:42:29
Откуда: Комсомольск-на-Амуре

Re: [PHP] - не велосипед ли изобретаю?

Непрочитанное сообщение krilya » 2008-06-01 12:42:37

спасибо за скрин, но с зендом я знаком :)
хотя сам его не юзаю, мне в принципе не обламывает один раз пхпдок настроить и потом вызывать с нужными опциями, можно в принципе ярлык сделать или кнопочку к тоталу :)

p.s. ну и стараюсь по максиму отвыкать от всяких виндовых мастеров, тупеешь от них... ;)