@USE
dtformat.p
input_date.p
@href[href zzz;title xxxx;ставить]
^if($ставить){y;n}
@main[]
^href[href;title](1<2)
<hr>
$stat[^file:stat[test.zip]]
$stat{
^$size=$size<br>
adate=^long_date_format[$adate]<br>
mdate=^long_date_format[$mdate]<br>
cdate=^long_date_format[$cdate]<br>
}
<hr>
$дата[^input_date:parse[9.7.2001]]
^long_date_format[$дата]
<hr>
$дата[^parse_date[9.7.2001]]
^long_date_format[$дата]
<hr>
$сегодня[^date:now[]]
$недельный_календарь[^table:calendar[rus]($сегодня.year;$сегодня.month;$сегодня.day)]
<TT>
$недельный_календарь{^menu{
$year $month $day $weekday<BR>
}}
</TT>
<hr>
$сегодня[^date:now[]]
$месячный_календарь[^table:calendar[rus;$сегодня.year;$сегодня.month]]
<TT>
^месячный_календарь.menu{^for[i;0;6]{
$day[$месячный_календарь.$i]
^if($day){$day}{ ^; ^;}
}<BR>}
</TT>
<hr>
before $время[^date:now[]]^время.string[]<br>
year+^время.roll[year](1)^время.string[]<br>
month+^время.roll[month](1)^время.string[]<br>
year-^время.roll[year](-1)^время.string[]<br>
month-^время.roll[month](-1)^время.string[]<br>
day+^время.roll[day](1)^время.string[]<br>
day-^время.roll[day](-1)^время.string[]<br>
<hr>
$русский_день_недели[
$0[Воскресенье]
$1[Понедельник]
$2[Вторник]
$3[Среда]
$4[Четверг]
$5[Пятница]
$6[Суббота]
]
$время[^date:set(0;1;1;3;30;4)]
$время{
^string[]<br>
${year}.${month}.${day} ${hour}:${minute}:${second}
}
<hr>
$время[^date:set(1.5)]
^время.string[]
<hr>
$сейчас[^date:now[]]
^^сейчас.string[]=^сейчас.string[] $день_недели($сейчас.weekday) $русский_день_недели.$день_недели<br>
$floatdays($сейчас) ^floatdays.format{%.20f}<br>
^eval(^math:frac($floatdays)*24)<br>
^eval(^math:frac($floatdays*24)*60)<br>
^eval(^math:frac($floatdays*24*60)*60)
<hr>
PI=^math:PI.format{%.40f}
<hr>
^math:random(10)
<hr>
^math:sqrt(16)
<hr>
$люди[
$2федя[
$рост[176]
]
$1василий[
$возраст[5]
]
]
$имена[^люди.keys[]]
$имена{
^sort{$key}
^menu{$key}[,].
}
<hr>
$таблица[^table:set{a b
1 2
}]
$колонки[^таблица.columns[]]
$колонки{
^menu{$column}[,].
}
<hr>
^if($form:id ne 'z"'){
ne
}{
eq
}
<hr>
^rem{
$one(1)
$z(0)
^eval(^one.int[]%0)
<hr>
}
$form:id:
<hr>
^switch(2){
^case(1;4;3){143}
^case[DEFAULT]{default}
}
<hr>
^switch(2){
^case(1;2;3){143}
^case[DEFAULT]{default}
}
<hr>
^switch(2){
^case(1;5;3){143}
}
<hr>
^switch(2){
^case(2){2}
}
<hr>
^switch[2]{
^case(2){![2]}
}
<hr>
$hash[$a[1]]
^hash.default[0]
^rem{
$target[targetval]
$form_admin[formadminval]
^if(def $target){<head><base target=$target^if(def $form_admin){_a}></head>}
^if(def $target){<head><base target=${target}^if(def $form_admin){_a}></head>}
если $target и $form_admin defined получаем
<head><base target={_a}></head>
<hr>
}
#$string:a(1)
#<hr>
#^if(^log(11)){y}{n}
#<hr>
#@my_func[arg;z]
#2
#@z[]
#^exp(^log(10))
#<hr>
#$a[^table:load[a<b]]
^rem{
^mail:send[
$from[paf@design.ru]
$to[paf@design.ru]
$subject[test]
$body[here]
]
<hr>
}
-^eol[]-
<hr>
^if(1<2){$a[1]}
^$a=$a
<hr>
<form method=post>
<input type=hidden name=a value=123>
<table border=1 width=250><tr><td>$form:name</td></tr></table>
<textarea name=name rows=5 cols=40>^untaint[html]{^default[$form:name;Пробный текст: А.Ф._Петросян <<Жизнь в Аду>>
нажми Submit]}</textarea><BR>
<input type=submit>
</form>
<hr>
#^main[]
#^use[$form:file]
$строка[вася ЗдЕсЬ]
^^строка.upper[]=^строка.upper[]<br>
^^строка.lower[]=^строка.lower[]<br>
<hr>
$a[12]
^a.int[]
<hr>
$t[^table:set{key value
1 v1
2 v2}]
$h[^t.hash[key]]
^sql_test[$SQL.connect-string]
#^sql_test[mysql://test:test@localhost/test/cp1251_koi8]
<HR>
$abc{}
$tn[^table:set[nameless]{a1 b1
a2 b2
}]
$x[^tn.locate[0;a2]]
^$tn.1=$tn.1
<hr>
$t0[^table:set{key a b
1 a1
2 a2 b2
}]
^if(^t0.locate[key;2] && "a" ne "b"){y;n}
<hr>
$currentFolder[/a/b]
$path[^currentFolder.lsplit[/]]
^path.flip[]
$path{
^menu{$0}{,}
}
<hr>
$t1[^table:set{key value
1 v1
2 v2}]
$h1[^t1.hash[key]]
^h1.default[$value[nothing]]
^$h1.2.value=$h1.2.value<br>
^$h1.2x.value=$h1.2x.value<br>
<hr>
$t2[^table:set{key a b
1 a1
2 a2 b2
}]
t2 ^if(^t2.empty[]){empty}{not empty}<br>
^t2.offset(1)
$t2.b
$r[^t2.record[]]
<hr>
$th[^t2.hash[b]]
^$th.b2.a=$th.b2.a<br>
<hr>
$th[^t2.hash[key;a]]
^$th.2.a=$th.2.a<br>
<hr>
#^OP:eval(1<2)
$filelist[^table:dir[.]]
<hr>
$path[/news/tululu/]
#^path.flip[]
<hr>
$branches[^table:set{name val
index.cgihtml 123
}]
$splitURI[^request:uri.lsplit[/]]
name ^if(^branches.locate[name;$splitURI.1]){found;not found}:
$branches.name
<HR>
$splitURI[^request:uri.lsplit[/]]
$splitURI.0!$splitURI.1
<HR>
$t2[^table:set{dir title
/here Here
}]
$t2{^menu{${dir}-$title}[,]}
<HR>
$dir[news]
$list[^table:dir[$dir]]
^list.menu{
$subdir[$dir/$list.name]
$sublist[^table:dir[$subdir]]
${list.name}/ $sublist{^menu{$name}[,]}<br>
}
<HR>
^if(in "/otherdeeper"){y;n}
<HR>
^^table:dir[/]:<BR>
$d[^table:dir[/]]
$d{^menu{$name  ^; ^; ^; ^;^if(-f $name){-f} ^if(-d $name){-d};<BR>}}
<HR>
$files[^table:set{name}]
$d{^menu{
^if(-d "$name"){
^:files.append{$name}
}
}}
$files{^menu{$name}[,]}
<HR>
@exception[origin;source;comment;type;code][i;j]
<body bgcolor=black>
<font color=white>
ERROR:
^if(def $source){$origin '$source'}
${comment}.
^if(def $type){type=$type}
^if(def $code){code=$code}
@auto_test[]
^BASE.auto_test[]
<li>${request:uri}!
@end
@sql_test[connect-string]
#^rem{
#^for[i](1;2){
^connect[$connect-string]{
$shit[^taint[our's]]
# $paf[^table:sql{insert into paf (name, age) values ('$shit', ^random:generate(10000))}]
^void:sql{update paf set age=age+1}
$paf[^table:sql{select * from paf order by id desc}(5)]
$paf{
^if(^empty[]){query result is empty}{
<table border=1>
<tr><td>id</td><td>name</td><td>age</td></tr>
^menu{<tr><td>$id</td><td>$name</td><td>$age</td></tr>}
</table>
}}
^^string:sql{select name from paf where id=1}=^string:sql{select name from paf where id=1}<br>
^^int:sql{select age from paf where id=1}=^int:sql{select age from paf where id=1}<br>
^^double:sql{select age from paf where id=1}=^double:sql{select age from paf where id=1}<br>
$paf[^hash:sql{select id,age from paf}]
^$paf.2.age=$paf.2.age<br>
}
#}
#}
@eol[]
eol
@default[test;def]
$result[^if(^test.length[]){$test}{$def}]
E-mail: