php:empty
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen angezeigt.
| Nächste Überarbeitung | Vorhergehende Überarbeitung | ||
| php:empty [05/04/2023 08:07] – angelegt - Externe Bearbeitung 127.0.0.1 | php:empty [05/04/2023 08:48] (aktuell) – Manuel | ||
|---|---|---|---|
| Zeile 1: | Zeile 1: | ||
| - | ====== | + | ====== |
| - | Wie erstelle ich einen Router für die eigene Komponente? | + | Überprüfen, |
| + | PHP kennt zu dieser Überprüfung drei verschiedene Funktionen, welche sehr ähnlich, aber nicht gleich sind. Diese sind isset(), empty() oder is_null(). | ||
| - | Das Routing ersetzt die " | + | Anbei ein Test der diese drei Funktionen vergleichen soll. |
| - | In Joomla existieren zwei Ansätze, wie ein Router aufgebaut werden kann. Zum einen gibt es den neuen View-Based Router, welcher das Verhalten der Joomla-Core Komponenten nachzustellen vermag. Zum anderen gibt es den Legacy Router, mit welchem man jedes beliebige Verhalten bauen kann. | + | <file php> |
| + | $testCase = array( | ||
| + | 1 => '' | ||
| + | 2 => "" | ||
| + | 3 => null, | ||
| + | 4 => array(), | ||
| + | 5 => FALSE, | ||
| + | 6 => NULL, | ||
| + | 7 => ' | ||
| + | 8 => 0, | ||
| + | 9 => 0.0, | ||
| + | 10 => new stdClass(), | ||
| + | ); | ||
| + | </ | ||
| - | Weitere Infos: | + | === empty() |
| - | https://www.techfry.com/ | + | |
| + | <file php> | ||
| + | 1 => true ('' | ||
| + | 2 => true ("" | ||
| + | 3 => true (null) | ||
| + | 4 => true (array()) | ||
| + | 5 => true (FALSE) | ||
| + | 6 => true (NULL) | ||
| + | 7 => true (' | ||
| + | 8 => true (0) | ||
| + | 9 => true (0.0) | ||
| + | 10 => false (stdClass()) | ||
| + | </ | ||
| - | ===== Neuer Router | + | === isset() === |
| - | Seit Joomla | + | <file php> |
| + | 1 => true ('' | ||
| + | 2 => true ("" | ||
| + | 3 => false (null) | ||
| + | 4 => true (array()) | ||
| + | 5 => true (FALSE) | ||
| + | 6 => false (NULL) | ||
| + | 7 => true (' | ||
| + | 8 => true | ||
| + | 9 => true (0.0) | ||
| + | 10 => false (stdClass()) | ||
| + | </ | ||
| - | Weitere Infos: | + | === is_null() === |
| - | https:// | + | |
| + | <file php> | ||
| + | 1 => false ('' | ||
| + | 2 => false ("" | ||
| + | 3 => true (null) | ||
| + | 4 => false (array()) | ||
| + | 5 => false (FALSE) | ||
| + | 6 => true (NULL) | ||
| + | 7 => false (' | ||
| + | 8 => false (0) | ||
| + | 9 => false (0.0) | ||
| + | 10 => false (stdClass()) | ||
| + | </ | ||
| + | |||
| + | === ($case == 0) === | ||
| - | < | + | <file php> |
| - | <?php | + | 1 |
| - | public function __construct($app | + | 2 => true ("" |
| - | { | + | 3 => true |
| - | // If your view takes a URL identifier, like the &id= parameter of the | + | 4 => false (array()) |
| - | // article view of com_content, | + | 5 => true |
| - | // variable in your $view object with $view-> | + | 6 => true (NULL) |
| - | | + | 7 => true |
| - | | + | 8 => true (0) |
| - | | + | 9 => true (0.0) |
| - | | + | 10 => false (stdClass()) |
| - | // If your view also has a parent view, like an article view which can | + | |
| - | // be reached via a category view, you then have to define the parent view | + | |
| - | // of $view. | + | |
| - | $article = new RouterViewConfiguration(' | + | |
| - | | + | |
| - | | + | |
| - | + | ||
| - | parent:: | + | |
| - | | + | |
| - | // implements the Itemid lookup for your router | + | |
| - | $this->attachRule(new MenuRules($this)); | + | |
| - | + | ||
| - | // implements the current behavior of the Joomla core components | + | |
| - | $this-> | + | |
| - | + | ||
| - | // implements the behavior when no Itemid is present after the Itemid lookup | + | |
| - | $this->attachRule(new NomenuRules($this)); | + | |
| - | } | + | |
| </ | </ | ||
| + | === ($case == '' | ||
| + | <file php> | ||
| + | 1 => true ('' | ||
| + | 2 => true ("" | ||
| + | 3 => true (null) | ||
| + | 4 => false (array()) | ||
| + | 5 => true (FALSE) | ||
| + | 6 => true (NULL) | ||
| + | 7 => false (' | ||
| + | 8 => true (0) | ||
| + | 9 => true (0.0) | ||
| + | 10 => false (stdClass()) | ||
| + | </ | ||
| + | === ($case == null) === | ||
| - | ===== Legacy Router | + | <file php> |
| + | 1 | ||
| + | 2 | ||
| + | 3 | ||
| + | 4 | ||
| + | 5 | ||
| + | 6 | ||
| + | 7 | ||
| + | 8 | ||
| + | 9 | ||
| + | 10 => false (stdClass()) | ||
| + | </ | ||
php/empty.1680674842.txt.gz · Zuletzt geändert: 05/04/2023 08:07 von 127.0.0.1