1. PHP / Говнокод #21922

    −18

    1. 01
    2. 02
    3. 03
    4. 04
    5. 05
    6. 06
    7. 07
    8. 08
    9. 09
    10. 10
    11. 11
    12. 12
    13. 13
    14. 14
    15. 15
    16. 16
    17. 17
    18. 18
    19. 19
    20. 20
    21. 21
    22. 22
    23. 23
    24. 24
    25. 25
    26. 26
    27. 27
    28. 28
    29. 29
    30. 30
    31. 31
    32. 32
    33. 33
    34. 34
    35. 35
    36. 36
    37. 37
    38. 38
    39. 39
    40. 40
    41. 41
    42. 42
    43. 43
    44. 44
    45. 45
    46. 46
    47. 47
    <?php
    if ($value == '' || $value == 0) {	return '';}
    $value = str_replace(array(' ', '.', ','), "", $value);
    $eur = $modx->runSnippet("GetTv", array(	"docid" => 1,	"field" => "rate-eur"));
    $usd = $modx->runSnippet("GetTv", array(	"docid" => 1,	"field" => "rate-usd"));
    $rus = $modx->runSnippet("GetTv", array(	"docid" => 1,	"field" => "rate-rus"));
    if ($to == 'eur') {
    	if ($from == 'eur') {	
    		$result = $value;	
    	} else if ($from == 'usd') {
    			$result = str_replace(',', '.', round(($value * $usd / $eur), 0));
    			} else if ($from == 'rus') {
    					$result = str_replace(',', '.', round(($value * $rus / $eur), 0));	
    				} else {
    						$result = str_replace(',', '.', round(($value / $eur), 0));
    							}
    						} else if ($to == 'rus') {
    							if ($from == 'eur') {	
    								$result = str_replace(',', '.', round(($value * $eur / $rus), 0));	
    							} else if ($from == 'usd') {	
    								$result = str_replace(',', '.', round(($value * $usd / $rus), 0));	
    							} else if ($from == 'rus') {	
    								$result = $value;	
    							} else {
    									$result = str_replace(',', '.', round(($value / $rus), 0));
    										}
    									} else if ($to == 'rub') {
    										if ($from == 'eur') {	
    											$result = str_replace(',', '.', round(($value * $eur), 0));	
    										} else if ($from == 'usd') {	
    											$result = str_replace(',', '.', round(($value * $usd), 0));	} else if ($from == 'rus') {		
    												$result = str_replace(',', '.', round(($value * $rus), 0));
    													} else {	
    														$result = $value;	
    													}
    												} else {
    													if ($from == 'eur') {	
    														$result = str_replace(',', '.', round(($value * $eur / $usd), 0));	
    													} else if ($from == 'usd') {	
    														$result = $value;	
    													} else if ($from == 'rus') {
    															$result = str_replace(',', '.', round(($value * $rus / $usd), 0));	
    														} else {	
    															$result = str_replace(',', '.', round(($value / $usd), 0));
    																}
    															}
    															echo $result;

    это пересчет валют (магазин на modx evo) причем это для каждого товара по 6 раз срабатывает

    Запостил: als_1984, 31 Декабря 2016

    Комментарии (3) RSS

    • Достаточно интересное решение, но я бы пожалуй всё-таки въебал регулярку.
      Ответить
      • Въебал регулярку тебе за щёку, проверяй.
        Ответить
    • А не использовать ли нам bbcode?
      Ответить

    Добавить комментарий