<?php
//yandex http-notification
$secret='XXXXXXXXXXXXXXXXXXXXXXX';
if ($_POST) {
$params='notification_type&operation_id&amount¤cy&datetime&sender&codepro';
$params=explode('&',$params);
$forHASH=array();
foreach($params as $key=>$p) {
if (isset($_POST[$p])) array_push($forHASH,$_POST[$p]);
}
if ($secret!="") array_push($forHASH,$secret);
if (isset($_POST['label'])) array_push($forHASH,$_POST['label']);
$forHASH=implode('&',$forHASH);
if ($_POST['sha1_hash']===sha1($forHASH) && $_POST['codepro']!=='true') { //transact ok.
////////////////////////////////
/////// Платёж прошел /////////
////////////////////////////////
$status="Успешно!";
$id=$_POST['label'];
$money=$_POST['amount'];
$tranid=$_POST["operation_id"];
$flow="in";
$paysystem="ym";
$ymfrom=$_POST['sender'];
/*что-то делаем....*/
////////////////////////////////
}
}
<script>
/*
* Tiny templater v0.0.1, (c)2016, xmoonlight
*/
str = "Когда $var{m1} вышли из $var{m2}, погода $var{m3}.";
re=/\$var{([^}\s]+)}/gi;
vars={'m1':'мы','m2':'парка','m3':'стала портиться'};
function getvars(re,s) {
var r=[]; while( m = re.exec(s)) r.push(m[1]); return r;
}
function setvars(re,s,a) {
return s.replace(re,(r,b)=>a[b]);
}
console.log(getvars(re,str)); //Array[3] => ["m1", "m2", "m3"]
console.log(setvars(re,str,vars)); //Когда мы вышли из парка, погода стала портиться.
</script>
а систему надо заимствовать из компьютерных шахмат, где рассматриваются разные комбинации и после сравнения выбирается лучшая.Про шахматы - понравилось больше всего)
Ведь, формулы конкретной не придуматьНу, я бы не стал спешить так говорить)
ради секундной писюльки углубляться?)ОМГ!!! Жалко заказчика....
надеюс мне заказчик заплатит за несколько суток изучения материала