PAD - PHP Application Driver


home | manual | reference | regression | sequence | develop | apps


Sequences - Xref - Sequences - range


Concepts | Sequences | Actions | Examples | Reference

reference2


App: sequence Page: actions

HTML RESULT
{sequence '11..20', push='mySeq1'}
{mySeq1}                      {$sequence} {/mySeq1}
11 12 13 14 15 16 17 18 19 20
{mySeq1 average}              {$sequence} {/mySeq1}
15.5
{mySeq1 count}                {$sequence} {/mySeq1}
10
{mySeq1 dedup}                {$sequence} {/mySeq1}
11 12 13 14 15 16 17 18 19 20
{mySeq1 distinct}             {$sequence} {/mySeq1}
10
{mySeq1 element=3}            {$sequence} {/mySeq1}
13
{mySeq1 first=3}              {$sequence} {/mySeq1}
11 12 13
{mySeq1 last=3}               {$sequence} {/mySeq1}
18 19 20
{mySeq1 maximum=3}            {$sequence} {/mySeq1}
18 19 20
{mySeq1 median}               {$sequence} {/mySeq1}
16
{mySeq1 minimum=3}            {$sequence} {/mySeq1}
11 12 13
{mySeq1 product}              {$sequence} {/mySeq1}
670442572800
{mySeq1 randomize=3}          {$sequence} {/mySeq1}
13 17 16
{mySeq1 reverse}              {$sequence} {/mySeq1}
20 19 18 17 16 15 14 13 12 11
{mySeq1 shuffle}              {$sequence} {/mySeq1}
13 18 14 20 15 11 16 19 17 12
{mySeq1 sort}                 {$sequence} {/mySeq1}
11 12 13 14 15 16 17 18 19 20
{mySeq1 sum}                  {$sequence} {/mySeq1}
155
{mySeq1 trim=3}               {$sequence} {/mySeq1}
14 15 16 17

HTML RESULT
{sequence '11..20', push='mySeq1'}
{mySeq1}                      {$sequence} {/mySeq1}
11 12 13 14 15 16 17 18 19 20
{mySeq1 slice='3|5'}          {$sequence} {/mySeq1}
14 15 16 17 18
{mySeq1 shift=2}              {$sequence} {/mySeq1}
11 12
{mySeq1 shift=2}              {$sequence} {/mySeq1}
13 14
{mySeq1 pop=2}                {$sequence} {/mySeq1}
19 20
{mySeq1 pop=2}                {$sequence} {/mySeq1}
17 18

HTML RESULT
{sequence '11..20', push='mySeq1'}
{sequence 'A..E',   push='mySeq2'}
{mySeq1 splice='3|5|mySeq2'} {$sequence} {/mySeq1}
11 12 13 A B C D E 19 20

HTML RESULT
{sequence '5;10;15;20',  name='one'}
{sequence '15;20;25;30', name='two'}
{sequence one}                     {$sequence} {/sequence}
5 10 15 20
{sequence two}                     {$sequence} {/sequence}
15 20 25 30
{sequence one, append='two'}       {$sequence} {/sequence}
5 10 15 20 15 20 25 30
{sequence one, prepend='two'}      {$sequence} {/sequence}
15 20 25 30 5 10 15 20
{sequence one, combine='two'}      {$sequence} {/sequence}
5 10 15 15 20 20 25 30
{sequence one, merge='two'}        {$sequence} {/sequence}
5 10 15 20 25 30
{sequence one, intersection='two'} {$sequence} {/sequence}
15 20
{sequence one, difference='two'}   {$sequence} {/sequence}
5 10 25 30
{sequence one, onlyNow='two'}      {$sequence} {/sequence}
5 10
{sequence one, onlyStore='two'}    {$sequence} {/sequence}
25 30


App: sequence Page: basic/range

HTML RESULT
{sequence range='1..10'}
{$sequence}
{/sequence}
1 2 3 4 5 6 7 8 9 10


App: sequence Page: check/add

HTML RESULT
{add 3, from=31, to=40                 } {$sequence} {/add}
34 35 36 37 38 39 40 41 42 43
{sequence '31..40', add=3              } {$sequence} {/sequence}
34 35 36 37 38 39 40 41 42 43
{sequence '31..40', make, add=3        } {$sequence} {/sequence}
34 35 36 37 38 39 40 41 42 43
{sequence '31..40', make='add|3'       } {$sequence} {/sequence}
34 35 36 37 38 39 40 41 42 43
{sequence '31..40', push='mySequence' }
{add mySequence, 3                   } {$sequence} {/add}
34 35 36 37 38 39 40 41 42 43
{add 3, mySequence                   } {$sequence} {/add}
34 35 36 37 38 39 40 41 42 43
{sequence:add mySequence, 3          } {$sequence} {/sequence:add}
34 35 36 37 38 39 40 41 42 43
{sequence:add 3, mySequence          } {$sequence} {/sequence:add}
34 35 36 37 38 39 40 41 42 43
{add:mySequence 3                      } {$sequence} {/add:mySequence}
34 35 36 37 38 39 40 41 42 43
{mySequence:add 3                      } {$sequence} {/mySequence:add}
34 35 36 37 38 39 40 41 42 43
{make mySequence, add=3           } {$sequence} {/make}
34 35 36 37 38 39 40 41 42 43
{make add=3, mySequence, 3           } {$sequence} {/make}
34 35 36 37 38 39 40 41 42 43
{pad:make mySequence, add=3       } {$sequence} {/pad:make}
34 35 36 37 38 39 40 41 42 43
{pad:make add=3, mySequence, 3       } {$sequence} {/pad:make}
34 35 36 37 38 39 40 41 42 43
{make:mySequence add=3              } {$sequence} {/make:mySequence}
34 35 36 37 38 39 40 41 42 43
{mySequence:make add=3              } {$sequence} {/mySequence:make}
34 35 36 37 38 39 40 41 42 43
{make:add mySequence, 3              } {$sequence} {/make:add}
34 35 36 37 38 39 40 41 42 43
{add:make mySequence, 3              } {$sequence} {/add:make}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{add 3, from=31, to=40, even                } {$sequence} {/add}
34 36 36 38 38 40 40 42 42 44
{sequence '31..40', add=3, even             } {$sequence} {/sequence}
34 36 36 38 38 40 40 42 42 44
{sequence '31..40', make, add=3, even       } {$sequence} {/sequence}
34 36 36 38 38 40 40 42 42 44
{sequence '31..40', make='add|3', even      } {$sequence} {/sequence}
34 36 36 38 38 40 40 42 42 44
{sequence '31..40', push='mySequence'      }
{add mySequence, 3, even                  } {$sequence} {/add}
34 36 36 38 38 40 40 42 42 44
{add 3, mySequence, even                  } {$sequence} {/add}
34 36 36 38 38 40 40 42 42 44
{sequence:add mySequence, 3, even         } {$sequence} {/sequence:add}
34 36 36 38 38 40 40 42 42 44
{sequence:add 3, mySequence, even         } {$sequence} {/sequence:add}
34 36 36 38 38 40 40 42 42 44
{add:mySequence 3, even                     } {$sequence} {/add:mySequence}
34 36 36 38 38 40 40 42 42 44
{mySequence:add 3, even                     } {$sequence} {/mySequence:add}
34 36 36 38 38 40 40 42 42 44
{make mySequence, add=3, even          } {$sequence} {/make}
34 36 36 38 38 40 40 42 42 44
{make add=3, mySequence, 3, even          } {$sequence} {/make}
34 36 36 38 38 40 40 42 42 44
{pad:make mySequence, add=3, even      } {$sequence} {/pad:make}
34 36 36 38 38 40 40 42 42 44
{pad:make add=3, mySequence, 3, even      } {$sequence} {/pad:make}
34 36 36 38 38 40 40 42 42 44
{make:mySequence add=3, even             } {$sequence} {/make:mySequence}
34 36 36 38 38 40 40 42 42 44
{mySequence:make add=3, even             } {$sequence} {/mySequence:make}
34 36 36 38 38 40 40 42 42 44
{make:add mySequence, 3, even             } {$sequence} {/make:add}
34 36 36 38 38 40 40 42 42 44
{add:make mySequence, 3, even             } {$sequence} {/add:make}
34 36 36 38 38 40 40 42 42 44


App: sequence Page: check/if
PHP
HTML
check/if.pad
Result
{sequence '5;10;15;20',  name='q1'}
{sequence '15;20;25;30', name='q2'}
{sequence '15;20', name='q3'}

{if q3 eq sequence:intersection ( q1, q2 )} ok @else@ nok {/if}
{if q3 eq sequence:intersection ( q1, [15,20,25,30] )} ok @else@ nok {/if}
{if q3 eq sequence:intersection ( [5,10,15,20], q2 )} ok @else@ nok {/if}
{if q3 eq sequence:intersection ( [5,10,15,20], [15,20,25,30] )} ok @else@ nok {/if}

{if q3 ne sequence:intersection ( q1, q2 )} nok @else@ ok {/if}
{if q3 ne sequence:intersection ( q1, [15,20,25,30] )} nok @else@ ok {/if}
{if q3 ne sequence:intersection ( [5,10,15,20], q2 )} nok @else@ ok {/if}
{if q3 ne sequence:intersection ( [5,10,15,20], [15,20,25,30] )} nok @else@ ok {/if}

<hr>

{sequence '3..5', name='abc'}

{if 4 in abc } ok @else@ nok {/if}
{if 6 in abc } nok @else@ ok {/if}

<hr>

{if 3 eq sequence:count(abc)} ok @else@ nok {/if}
{if sequence:count(abc) eq 4} nok @else@ ok {/if}

<hr>

{if 3 in sequence:count(abc)} ok @else@ nok {/if}
{if 4 in sequence:count(abc)} nok @else@ ok {/if}

{sequence '8..10', name='q1'}
{sequence '1..10', name='q2'}

<hr>

{if q1 eq sequence:last(q2,3)} ok @else@ nok {/if}
{if q1 ne sequence:last(q2,3)} nok @else@ ok {/if}

<hr>

{if [9,10] ne sequence:last ( q2, 2) } nok @else@ ok {/if}
{if [8,9] eq sequence:last ( [7,8,9], 2) } ok @else@ nok {/if}
ok ok ok ok ok ok ok ok
ok ok
ok ok
ok ok
ok ok
ok ok

App: sequence Page: check/store

HTML RESULT
{sequence '31..40', push='mySequence'}

HTML RESULT
{mySequence:sequence} {$sequence} {/mySequence:sequence}
31 32 33 34 35 36 37 38 39 40
{mySequence:pull} {$sequence} {/mySequence:pull}
31 32 33 34 35 36 37 38 39 40
{mySequence:action sum       } {$sequence} {/mySequence:action}
355
{mySequence:keep even      } {$sequence} {/mySequence:keep}
32 34 36 38 40
{mySequence:remove even      } {$sequence} {/mySequence:remove}
31 33 35 37 39
{mySequence:make add=3     } {$sequence} {/mySequence:make}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{sequence:mySequence} {$sequence} {/sequence:mySequence}
31 32 33 34 35 36 37 38 39 40
{pull:mySequence} {$sequence} {/pull:mySequence}
31 32 33 34 35 36 37 38 39 40
{action:mySequence sum       } {$sequence} {/action:mySequence}
355
{keep:mySequence even      } {$sequence} {/keep:mySequence}
32 34 36 38 40
{remove:mySequence even      } {$sequence} {/remove:mySequence}
31 33 35 37 39
{make:mySequence add=3    } {$sequence} {/make:mySequence}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{mySequence sequence         } {$sequence} {/mySequence}
31 32 33 34 35 36 37 38 39 40
{mySequence store            } {$sequence} {/mySequence}
31 32 33 34 35 36 37 38 39 40
{mySequence action,  sum     } {$sequence} {/mySequence}
355
{mySequence keep,    even    } {$sequence} {/mySequence}
32 34 36 38 40
{mySequence remove,  even    } {$sequence} {/mySequence}
31 33 35 37 39
{mySequence make,    add=3  } {$sequence} {/mySequence}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{sequence mySequence         } {$sequence} {/sequence}
31 32 33 34 35 36 37 38 39 40
{pull mySequence         } {$sequence} {/pull}
31 32 33 34 35 36 37 38 39 40
{action mySequence, sum    } {$sequence} {/action}
355
{keep mySequence, even   } {$sequence} {/keep}
32 34 36 38 40
{remove mySequence, even   } {$sequence} {/remove}
31 33 35 37 39
{make mySequence, add=3 } {$sequence} {/make}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{sum:action mySequence       } {$sequence} {/sum:action}
355
{even:keep mySequence      } {$sequence} {/even:keep}
32 34 36 38 40
{even:remove mySequence      } {$sequence} {/even:remove}
31 33 35 37 39
{add:make mySequence, 3    } {$sequence} {/add:make}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{sum:mySequence action       } {$sequence} {/sum:mySequence}
355
{even:mySequence keep         } {$sequence} {/even:mySequence}
32 34 36 38 40
{even:mySequence remove       } {$sequence} {/even:mySequence}
31 33 35 37 39
{add:mySequence make, 3      } {$sequence} {/add:mySequence}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{sum action, mySequence     } {$sequence} {/sum}
355
{sequence:even keep,   mySequence     } {$sequence} {/sequence:even}
32 34 36 38 40
{sequence:even remove, mySequence     } {$sequence} {/sequence:even}
31 33 35 37 39
{sequence:add make,   mySequence, 3  } {$sequence} {/sequence:add}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{sum mySequence, action    } {$sequence} {/sum}
355
{sequence:even mySequence, keep      } {$sequence} {/sequence:even}
32 34 36 38 40
{sequence:even mySequence, remove    } {$sequence} {/sequence:even}
31 33 35 37 39
{sequence:add mySequence, make, 3   } {$sequence} {/sequence:add}
34 35 36 37 38 39 40 41 42 43

HTML RESULT
{loop rows=20, from=10, push='mySequence'           }
{pull prime             } {$sequence} {/pull}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{mySequence prime          } {$sequence} {/mySequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime mySequence          } {$sequence} {/prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime pull='mySequence'           } {$sequence} {/prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{sequence:prime mySequence } {$sequence} {/sequence:prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime:sequence mySequence } {$sequence} {/prime:sequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{sequence:prime pull='mySequence'  } {$sequence} {/sequence:prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime:sequence pull='mySequence'  } {$sequence} {/prime:sequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{pull:mySequence prime     } {$sequence} {/pull:mySequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{mySequence:pull prime     } {$sequence} {/mySequence:pull}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109

HTML RESULT
{loop rows=20, from=10, push='mySequence'                 }
{pull make='prime'            } {$sequence} {/pull}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{pull make, prime             } {$sequence} {/pull}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{pull prime, make             } {$sequence} {/pull}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{mySequence make='prime'         } {$sequence} {/mySequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{mySequence prime, make          } {$sequence} {/mySequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{mySequence make, prime          } {$sequence} {/mySequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{make mySequence, prime          } {$sequence} {/make}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{make prime, mySequence          } {$sequence} {/make}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{make pull='mySequence', prime             } {$sequence} {/make}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{make prime, pull='mySequence'           } {$sequence} {/make}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime mySequence, make          } {$sequence} {/prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime make, mySequence          } {$sequence} {/prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime make, pull='mySequence'           } {$sequence} {/prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime pull='mySequence', make             } {$sequence} {/prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{mySequence:make prime           } {$sequence} {/mySequence:make}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{make:mySequence prime           } {$sequence} {/make:mySequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{sequence:prime mySequence, make } {$sequence} {/sequence:prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime:sequence mySequence, make } {$sequence} {/prime:sequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{sequence:prime pull='mySequence', make    } {$sequence} {/sequence:prime}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{prime:sequence pull='mySequence', make    } {$sequence} {/prime:sequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{pull:mySequence make='prime'    } {$sequence} {/pull:mySequence}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109
{mySequence:pull make='prime'    } {$sequence} {/mySequence:pull}
29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109

HTML RESULT
{loop rows=40, from=10, push='mySequence'                 }
{pull keep='prime'            } {$sequence} {/pull}
11 13 17 19 23 29 31 37 41 43 47
{pull keep, prime             } {$sequence} {/pull}
11 13 17 19 23 29 31 37 41 43 47
{pull prime, keep             } {$sequence} {/pull}
11 13 17 19 23 29 31 37 41 43 47
{mySequence keep='prime'         } {$sequence} {/mySequence}
11 13 17 19 23 29 31 37 41 43 47
{mySequence prime, keep          } {$sequence} {/mySequence}
11 13 17 19 23 29 31 37 41 43 47
{mySequence keep, prime          } {$sequence} {/mySequence}
11 13 17 19 23 29 31 37 41 43 47
{keep mySequence, prime          } {$sequence} {/keep}
11 13 17 19 23 29 31 37 41 43 47
{keep prime, mySequence          } {$sequence} {/keep}
11 13 17 19 23 29 31 37 41 43 47
{keep pull='mySequence', prime             } {$sequence} {/keep}
11 13 17 19 23 29 31 37 41 43 47
{keep prime, pull='mySequence'           } {$sequence} {/keep}
11 13 17 19 23 29 31 37 41 43 47
{prime mySequence, keep          } {$sequence} {/prime}
11 13 17 19 23 29 31 37 41 43 47
{prime keep, mySequence          } {$sequence} {/prime}
11 13 17 19 23 29 31 37 41 43 47
{prime keep, pull='mySequence'           } {$sequence} {/prime}
11 13 17 19 23 29 31 37 41 43 47
{prime pull='mySequence', keep             } {$sequence} {/prime}
11 13 17 19 23 29 31 37 41 43 47
{mySequence:keep prime           } {$sequence} {/mySequence:keep}
11 13 17 19 23 29 31 37 41 43 47
{keep:mySequence prime           } {$sequence} {/keep:mySequence}
11 13 17 19 23 29 31 37 41 43 47
{sequence:prime mySequence, keep } {$sequence} {/sequence:prime}
11 13 17 19 23 29 31 37 41 43 47
{prime:sequence mySequence, keep } {$sequence} {/prime:sequence}
11 13 17 19 23 29 31 37 41 43 47
{sequence:prime pull='mySequence', keep    } {$sequence} {/sequence:prime}
11 13 17 19 23 29 31 37 41 43 47
{prime:sequence pull='mySequence', keep    } {$sequence} {/prime:sequence}
11 13 17 19 23 29 31 37 41 43 47
{pull:mySequence keep='prime'    } {$sequence} {/pull:mySequence}
11 13 17 19 23 29 31 37 41 43 47
{mySequence:pull keep='prime'    } {$sequence} {/mySequence:pull}
11 13 17 19 23 29 31 37 41 43 47

HTML RESULT
{loop rows=40, from=10, push='mySequence'}
{pull remove='prime'            } {$sequence} {/pull}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{pull remove, prime             } {$sequence} {/pull}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{pull prime, remove             } {$sequence} {/pull}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{mySequence remove='prime'         } {$sequence} {/mySequence}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{mySequence prime, remove          } {$sequence} {/mySequence}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{mySequence remove, prime          } {$sequence} {/mySequence}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{remove mySequence, prime          } {$sequence} {/remove}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{remove prime, mySequence          } {$sequence} {/remove}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{remove pull='mySequence', prime             } {$sequence} {/remove}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{remove prime, pull='mySequence'           } {$sequence} {/remove}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{prime mySequence, remove          } {$sequence} {/prime}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{prime remove, mySequence          } {$sequence} {/prime}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{prime remove, pull='mySequence'           } {$sequence} {/prime}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{prime pull='mySequence', remove             } {$sequence} {/prime}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{mySequence:remove prime           } {$sequence} {/mySequence:remove}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{remove:mySequence prime           } {$sequence} {/remove:mySequence}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{sequence:prime mySequence, remove } {$sequence} {/sequence:prime}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{prime:sequence mySequence, remove } {$sequence} {/prime:sequence}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{sequence:prime pull='mySequence', remove    } {$sequence} {/sequence:prime}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{prime:sequence pull='mySequence', remove    } {$sequence} {/prime:sequence}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{pull:mySequence remove='prime'    } {$sequence} {/pull:mySequence}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49
{mySequence:pull remove='prime'    } {$sequence} {/mySequence:pull}
10 12 14 15 16 18 20 21 22 24 25 26 27 28 30 32 33 34 35 36 38 39 40 42 44 45 46 48 49

HTML RESULT
{loop rows=40, from=10, push='mySequence'                 }
{pull flag='prime'            } {$sequence} {/pull}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{pull flag, prime             } {$sequence} {/pull}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{pull prime, flag             } {$sequence} {/pull}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{mySequence flag='prime'         } {$sequence} {/mySequence}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{mySequence prime, flag          } {$sequence} {/mySequence}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{mySequence flag, prime          } {$sequence} {/mySequence}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{flag mySequence, prime          } {$sequence} {/flag}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{flag prime, mySequence          } {$sequence} {/flag}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{flag pull='mySequence', prime             } {$sequence} {/flag}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{flag prime, pull='mySequence'           } {$sequence} {/flag}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{prime mySequence, flag          } {$sequence} {/prime}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{prime flag, mySequence          } {$sequence} {/prime}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{prime flag, pull='mySequence'           } {$sequence} {/prime}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{prime pull='mySequence', flag             } {$sequence} {/prime}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{mySequence:flag prime           } {$sequence} {/mySequence:flag}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{flag:mySequence prime           } {$sequence} {/flag:mySequence}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{sequence:prime mySequence, flag } {$sequence} {/sequence:prime}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{prime:sequence mySequence, flag } {$sequence} {/prime:sequence}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{sequence:prime pull='mySequence', flag } {$sequence} {/sequence:prime}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{prime:sequence pull='mySequence', flag } {$sequence} {/prime:sequence}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{pull:mySequence flag='prime'           } {$sequence} {/pull:mySequence}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0
{mySequence:pull flag='prime'    } {$sequence} {/mySequence:pull}
0 1 0 1 0 0 0 1 0 1 0 0 0 1 0 0 0 0 0 1 0 1 0 0 0 0 0 1 0 0 0 1 0 1 0 0 0 1 0 0


App: sequence Page: check/sum

HTML RESULT
{sum '31..40'                    } {$sum} {/sum}
355
{sum from=31, to=40              } {$sum} {/sum}
355
{action sum, '31..40'            } {$sum} {/action}
355
{action:sum '31..40'             } {$sum} {/action:sum}
355
{sequence '31..40', sum          } {$sum} {/sequence}
355
{sequence sum, '31..40'          } {$sum} {/sequence}
355
{sequence '31..40', action='sum' } {$sum} {/sequence}
355
{sequence '31..40', push='mySequence'}
{mySequence sum             } {$sequence} {/mySequence}
355
{mySequence action='sum'    } {$sequence} {/mySequence}
355
{mySequence:sum} {$sequence} {/mySequence:sum}
355
{sum mySequence             } {$sequence} {/sum}
355
{sum:mySequence} {$sequence} {/sum:mySequence}
355
{action mySequence, sum     } {$sequence} {/action}
355
{action:mySequence sum      } {$sequence} {/action:mySequence}
355
{action sum, mySequence     } {$sequence} {/action}
355
{action:sum mySequence      } {$sequence} {/action:sum}
355

HTML RESULT
{add 3, from=31, to=40, even, sum                } {$sequence} {/add}
390
{sequence '31..40', add=3, even, sum             } {$sequence} {/sequence}
390
{sequence '31..40', make, add=3, even, sum       } {$sequence} {/sequence}
390
{sequence '31..40', make='add|3', even, sum      } {$sequence} {/sequence}
390
{sequence '31..40', push='mySequence'           }
{add mySequence, 3, even, sum                  } {$sequence} {/add}
390
{add 3, mySequence, even, sum                  } {$sequence} {/add}
390
{sequence:add mySequence, 3, even, sum         } {$sequence} {/sequence:add}
390
{sequence:add 3, mySequence, even, sum         } {$sequence} {/sequence:add}
390
{add:mySequence 3, even, sum                     } {$sequence} {/add:mySequence}
390
{mySequence:add 3, even, sum                     } {$sequence} {/mySequence:add}
390
{make mySequence, add=3, even, sum          } {$sequence} {/make}
390
{make add=3, mySequence, 3, even, sum          } {$sequence} {/make}
390
{pad:make mySequence, add=3, even, sum      } {$sequence} {/pad:make}
390
{pad:make add=3, mySequence, 3, even, sum      } {$sequence} {/pad:make}
390
{make:mySequence add=3, even, sum             } {$sequence} {/make:mySequence}
390
{mySequence:make add=3, even, sum             } {$sequence} {/mySequence:make}
390
{make:add mySequence, 3, even, sum             } {$sequence} {/make:add}
390
{add:make mySequence, 3, even, sum             } {$sequence} {/add:make}
390


App: sequence Page: concepts/actions
Actions operate on a sequence list after the list is build.

In below examples last/reverse/shuffle are actions.

HTML RESULT
{sequence range='20..30', push='mySeq'}
{mySeq last=3} {$sequence} {/mySeq}
28 29 30
{reverse mySeq} {$sequence} {/reverse}
30 29 28 27 26 25 24 23 22 21 20
{sequence mySeq, shuffle} {$sequence} {/sequence}
28 29 21 22 23 20 25 24 26 27 30


App: sequence Page: concepts/plays
A play is a sequence, but not used to build a list, it is used to exucute on a sequence list.

There are 3 play operators
make Make all entries of a sequence list that sequence
keep Keep sequence list entries that are that sequence
remove Remove sequence list entries that are not that sequence

HTML RESULT
{sequence range='20..30', push='mySequence'}


App: sequence Page: concepts/sequences
In below examples range/even/prime are a sequence.

HTML RESULT
{sequence range='20..30'} {$range} {/sequence}
20 21 22 23 24 25 26 27 28 29 30
{sequence even, rows=10}  {$even}  {/sequence}
2 4 6 8 10 12 14 16 18 20
{sequence prime, rows=10} {$prime} {/sequence}
2 3 5 7 11 13 17 19 23 29


App: sequence Page: concepts/stores
Stores are stored sequence lists, in below example mySeq is a store.

HTML RESULT
{sequence range='20..30', push='mySeq'}
{sequence mySeq} {$sequence} {/sequence}
20 21 22 23 24 25 26 27 28 29 30
{mySeq} {$sequence} {/mySeq}
20 21 22 23 24 25 26 27 28 29 30


App: reference Page: index
PHP
HTML
index.pad
Result
<blockquote>

{block}

{pad data='reference'}

{sequence '1..{$lvl}'}
<blockquote>
{/sequence}

<h3>{$type}</h3>

<blockquote>

{getReference '{$dir}', '{$xref}'}

{if $dir}
<a href="?dir{?xref}{?type}{?item}">{$item}</a>
{elseif $pages}
<a href="?pages{?xref}{?type}{?item}">{$item}</a>
@else@
{$item}
{/if}

&nbsp;

{/getReference}

</blockquote>

{sequence '1..{$lvl}'}
</blockquote>
{/sequence}

{/pad}

{/block}

</blockquote>

Tags

PAD tags

action   ajax   array   at   bool   break   case   cease   check   close   code   content   continue   count   curl   data   decrement   dir   dump   echo   error   exception   exists   exit   false   field   file   files   flag   foo   get   if   ignore   increment   keep   make   null   open   output   pad   page   pull   reactData   record   redirect   remove   restart   resume   sandbox   sequence   set   switch   tidy   trace   true   until   while  

Tag types

action   app   array   bool   common   constant   content   data   field   flag   function   include   keep   level   local   make   pad   php   property   pull   remove   script   select   sequence  

Tag properties

border   count   current   data   done   even   fields   first   firstFieldName   firstFieldValue   key   keys   last   middle   name   notFirst   notLast   odd   option   options   parameter   parameters   remaining   variable   variables  

Tag options

bool   close   content   data   demand   dump   else   error   glue   go   ignore   noError   notOk   null   open   optional   print   quote   tidy   toBool   toContent   toData  

Functions

PAD functions

after   afterLast   before   beforeLast   between   bold   capitalize   close   contains   cut   date   encodeHigh   exists   html   ignore   in   left   like   lower   max_len   mid   nbsp   now   open   optional   range   replace   right   sanitize   slashes   stripLow   stripslashes   substr   tag   time   timestamp   trim   ucwords   upper   url   white  

Single functions

array   constant   content   data   field   flag   include   level   local   object   parm   property   pull  

Parms functions

app   pad   php   sequence   tag  

Data handling

dedup   end   first   last   page   random   reverse   row   rows   shuffle   slice   sort   splice   start   trim  

@xxx@ constructs

  content   end   page   start   tidy  

At (x@y)

At - tag groups

any   current   function   level   options   parameters   providers   saved   variables  

At - tag properties

border   count   current   data   done   even   fields   first   key   keys   last   middle   name   notFirst   notLast   odd   options   parameters   remaining   variables  

At - types

all   data   globals   sequences   tags  

App: manual Page: lvl_occ/5
PHP
HTML
lvl_occ/5.pad
Result
<table border='1'>
{sequence '10..30', increment=10, name='row'}
<tr>
{sequence '1..5', name='column'}
<td>{$row | + $column}</td>
{/sequence}
</tr>
{/sequence}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35

App: manual Page: miscellaneous/level_and_occurrence_variables

HTML RESULT
{set $range = 10}

<table border=1>

<tr>
<th>Level</th>
<th>Occurence</th>
</tr>

{sequence range='1..5', $abc=$range, %xyz=$range}
<tr>
<td>{$abc}</td>
<td>{$xyz}</td>
</tr>
{/sequence}

</table>
Level Occurence
10 1
10 2
10 3
10 4
10 5
<table border=1>

<tr>
<th>Name</th>
<th>Salary</th>
<th>Bonus</th>
<th>Total</th>
</tr>

{staff %total = $salary + $bonus}

<tr align="right">
<td align="left">{$name}</td>
<td>{$salary | %.2f}</td>
<td>{$bonus | %.2f}</td>
<td>{$total | %.2f}</td>
</tr>

{/staff}

</table>
Name Salary Bonus Total
joe 1000.00 500.00 1500.00
jim 2000.00 400.00 2400.00
john 3000.00 300.00 3300.00
jack 4000.00 200.00 4200.00
jerry 5000.00 100.00 5100.00


App: manual Page: pages/level_and_occurrence_variables
PHP
HTML
pages/level_and_occurrence_variables.pad
Result
{block}
$xxx variables are set once at the beginning of a level<br>
%xxx variables are set on every occurence inside a level<br>
{/block}

{page 'miscellaneous/level_and_occurrence_variables'}
$xxx variables are set once at the beginning of a level
%xxx variables are set on every occurence inside a level

HTML RESULT
{set $range = 10}

<table border=1>

<tr>
<th>Level</th>
<th>Occurence</th>
</tr>

{sequence range='1..5', $abc=$range, %xyz=$range}
<tr>
<td>{$abc}</td>
<td>{$xyz}</td>
</tr>
{/sequence}

</table>
Level Occurence
10 1
10 2
10 3
10 4
10 5
<table border=1>

<tr>
<th>Name</th>
<th>Salary</th>
<th>Bonus</th>
<th>Total</th>
</tr>

{staff %total = $salary + $bonus}

<tr align="right">
<td align="left">{$name}</td>
<td>{$salary | %.2f}</td>
<td>{$bonus | %.2f}</td>
<td>{$total | %.2f}</td>
</tr>

{/staff}

</table>
Name Salary Bonus Total
joe 1000.00 500.00 1500.00
jim 2000.00 400.00 2400.00
john 3000.00 300.00 3300.00
jack 4000.00 200.00 4200.00
jerry 5000.00 100.00 5100.00


App: manual Page: pages/levels_and_occurrences
PHP
HTML
pages/levels_and_occurrences.pad
Result
<p>
{block}
PAD is data driven, the PAD data concepts are named Level and Occurence
<br><br>
Below example: <br>
- Is two levels deep <br>
- The level 'row' has 3 occurences<br>
- The level 'column' has 5 occurences<br><br>
{/block}
{example 'lvl_occ/1', skipNames, center}
</p>

{block}
If not specifield for a PAD tag then default it has 1 occurence.
<br><br><hr><br>
Just for fun, below the above example implemented in a few different ways.
<br>
Hopefully all this magic will be explained in this manual.
{/block}

<p>
{sequence '2..12', name='xxx'}
{example 'lvl_occ/{$xxx}', skipNames{notFirst},skipOpen,skipHeader{/notFirst}{notLast},skipClose{/notLast}}
{/sequence}
</p>

PAD is data driven, the PAD data concepts are named Level and Occurence

Below example:
- Is two levels deep
- The level 'row' has 3 occurences
- The level 'column' has 5 occurences

PHP HTML Result
<?php

$row
[1] ['column'] [1] ['cell'] = 11;
$row [1] ['column'] [2] ['cell'] = 12;
$row [1] ['column'] [3] ['cell'] = 13;
$row [1] ['column'] [4] ['cell'] = 14;
$row [1] ['column'] [5] ['cell'] = 15;

$row [2] ['column'] [1] ['cell'] = 21;
$row [2] ['column'] [2] ['cell'] = 22;
$row [2] ['column'] [3] ['cell'] = 23;
$row [2] ['column'] [4] ['cell'] = 24;
$row [2] ['column'] [5] ['cell'] = 25;

$row [3] ['column'] [1] ['cell'] = 31;
$row [3] ['column'] [2] ['cell'] = 32;
$row [3] ['column'] [3] ['cell'] = 33;
$row [3] ['column'] [4] ['cell'] = 34;
$row [3] ['column'] [5] ['cell'] = 35;

?>
<table border='1'>
{row}
<tr>
{column}
<td>{$cell}</td>
{/column}
</tr>
{/row}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35

If not specifield for a PAD tag then default it has 1 occurence.



Just for fun, below the above example implemented in a few different ways.
Hopefully all this magic will be explained in this manual.

PHP HTML Result
<?php

$row
= [1,2,3];
$column = [1,2,3,4,5];

?>
<table border='1'>
{row}
<tr>
{column}
<td>{$row | * 10 | + $column}</td>
{/column}
</tr>
{/row}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35
<?php

$short
= [ [ 11,12,13,14,15 ],
[
21,22,23,24,25 ],
[
31,32,33,34,35 ] ];

?>
<table border='1'> 
{short}
<tr>
{short}
<td>{$short}</td>
{/short}
</tr>
{/short}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35
<?php

for ($row = 1; $row <= 3; $row++)
for (
$col = 1; $col <= 5; $col++)
$rows [$row] ['cols'] [$col] = TRUE;

?>
<table border='1'>
{rows}
<tr>
{cols}
<td>{echo (&rows:key*10) + &cols:key}</td>
{/cols}
</tr>
{/rows}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35
<table border='1'>
{sequence '10..30', increment=10, name='row'}
<tr>
{sequence '1..5', name='column'}
<td>{$row | + $column}</td>
{/sequence}
</tr>
{/sequence}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35
<table border='1'>
{sequence 3}
<tr>
{sequence 5}
<td>{echo ($-2 * 10) + $-1}</td>
{/sequence}
</tr>
{/sequence}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35
<table border='1'>
{set $row = 10}
{while $row <= 30}
<tr>
{set $column = 1}
{while $column <= 5}
<td>{echo $row + $column}</td>
{increment $column}
{/while}
</tr>
{set $row = $row + 10}
{/while}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35
{data 'row'   } (1,2,3)     {/data}
{data 'column'} (1,2,3,4,5) {/data}

<table border='1'>
{row}
<tr>
{column}
<td>{$row | * 10 | + $column}</td>
{/column}
</tr>
{/row}
</table>
11 12 13 14 15
21 22 23 24 25
31 32 33 34 35
{data 'myJson'}
[
{ "column": [ 11, 12, 13, 14, 15 ] },
{ "column": [ 21, 22, 23, 24, 35 ] },
{ "column": [ 31, 32, 33, 34, 35 ] }
]
{/data}

{pad data='myJson'}
<table border='1'>
@start@
<tr>
{column}
<td>{$column}</td>
{/column}
</tr>
@end@
</table>
{/pad}
11 12 13 14 15
21 22 23 24 35
31 32 33 34 35
{data 'myCsv'}
AA,BB,CC,DD,EE
11,12,13,14,15
21,22,23,24,35
31,32,33,34,35
{/data}

<table border='1'>
{myCsv}
<tr>
{fields}
<td>{$value}</td>
{/fields}
</tr>
{/myCsv}
</table>
11 12 13 14 15
21 22 23 24 35
31 32 33 34 35
{data 'myYaml', 'http://localhost/pad/level_demo.yaml'}

<table border='1'>
{myYaml}
<tr>
{column}
<td>{$column}</td>
{/column}
</tr>
{/myYaml}
</table>
11 12 13 14 15
21 22 23 24 35
31 32 33 34 35
{data 'myXml', 'level_demo.xml'}

<table border='1'>
{myXml}
<tr>
{column}
<td>{$column}</td>
{/column}
</tr>
{/myXml}
</table>
11 12 13 14 15
21 22 23 24 35
31 32 33 34 35




home | manual | reference | regression | sequence | develop | apps

(c) 2003-2025 Herbert Groot Jebbink