Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- # test
- <?php
- require_once '/usr/include/php/nette/Nette/loader.php';
- Nette\Diagnostics\Debugger::enable(FALSE);
- Nette\Diagnostics\Debugger::$strictMode = TRUE;
- function compareRequestArgs($new, $old)
- {
- foreach ($new as $key => $val) {
- if (is_scalar($val) && (string) $val !== (isset($old[$key]) ? (string) $old[$key] : '')) {
- return FALSE;
- } elseif (is_array($val) && (!isset($old[$key]) || !compareRequestArgs($val, $old[$key]))) {
- return FALSE;
- }
- }
- return TRUE;
- }
- $c = array();
- $c[] = compareRequestArgs(array('a' => TRUE), array('a' => TRUE));
- $c[] = !compareRequestArgs(array('a' => TRUE), array('a' => FALSE));
- $c[] = !compareRequestArgs(
- array('a' => array('c' => array('d' => TRUE))),
- array('a' => array('b' => array('d' => TRUE)))
- );
- $c[] = !compareRequestArgs(
- array('a' => array('c' => array('d' => TRUE))),
- array('a' => array('c' => TRUE))
- );
- $c[] = !compareRequestArgs(
- array('a' => array('c' => TRUE)),
- array('a' => array('c' => array('d' => TRUE)))
- );
- dump(count(array_filter($c)) === count($c) ? "OK" : "FAILED", $c);
- # output
- $ php ./Presenter.compareArgs.php
- "OK" (2)
- array(5) [
- 0 => TRUE
- 1 => TRUE
- 2 => TRUE
- 3 => TRUE
- 4 => TRUE
- ]
Advertisement
Add Comment
Please, Sign In to add comment