PHP 8.3–8.4 pour Bitrix et WordPress : types, attributs, modèles

DEV - 01/02
PHP 8.3–8.4 pour Bitrix et WordPress : types, attributs et modifications historiques Vous êtes à la recherche de...

PHP 8.3–8.4 pour Bitrix et WordPress : types, attributs et évolutions de la modernisation

Si vous faites quelque chose pour PHP 7.4 dans Bitrix/WordPress — vous êtes en train de le faire : votre bibliothèque n'est pas « adaptée » à 7.4, mais уязвимостей закрывают только в новых ветках. Il n'y a pas d'heure à ce moment-là que vous puissiez aimer votre sac à main, mais ce n'est pas à 03h00.

PHP 8.3 — pour l'utilisation et la simplicité des typographies (plus les meilleures fonctionnalités). (php.net/releases/8.3/)

PHP 8.4 — уже про новый уровень модели данных: property hooks и асимметричная видимость свойств. (php.net/releases/8.4/)

Et bien — sans philosophie, mais vous pouvez vraiment utiliser Bitrix (D7/ORM/events) et WordPress (WP_Query/hooks).

1) Types d'unions : перестаём притворяться, что всё — « mixte »

Les types d'union sont disponibles (PHP 8.0), mais dès la migration vers la version 7.4, cette option est maximale : vous « pouvez » obtenir des licences de code et видите, где у вас вечная каша.

Bitrix : il s'agit précisément de "c'est vrai, c'est vrai, c'est faux"

Classique : les opinions, les mots, les informations sur les blocs d'informations qui vous intéressent.

Taille (7,4 étages) :

/\* _@return Mixed_ / function getOption($name) { return \Bitrix\Main\Config\Option::get('main', $name); }
Entrer en mode plein écran Quitter le mode plein écran

État (8.x) :

utilisez Bitrix\Main\Config\Option ; function getOption(string $name) : string|int|bool|null { $value = Option::get('main', $name, null); if ($value === null || $value === '') { return null; } // Exemple : exemple if ($value === 'Y' || $value === 'N') { return $value === 'Y'; } // Exemple : ci-dessous if (ctype\_digit($value)) { return (int)$value; } renvoie $value ; }
Entrer en mode plein écran Quitter le mode plein écran

Bénéfice : même si vous n'avez pas de délai de développement « magique », l'IDE est vraiment en mesure de s'adapter aux types de téléchargement et de certification.

WordPress : fonctions/fonctions, ce qui correspond à « situation ou WP_Error »

Exemples typiques : get_option(), get_post(), certains filtres — qui correspondent à l'objet false/WP_Error. Votre type d'union est ouvert aux chiens et à l'IDE qui vous permet de les télécharger.

function vp\_get\_post(int $postId) : \WP\_Post|\WP\_Error { $post = get\_post($postId); return $post instanceof \WP\_Post ? $post : new \WP\_Error('not\_found', 'Post introuvable'); } // Utilisation — L'IDE peut facilement utiliser ce type de modèle : $postOrError = vp\_get\_post(123); if (is\_wp\_error($postOrError)) { error\_log($postOrError->get\_error\_message()); retour; } // Supprimer $postOrError — garantit \WP\_Post echo $postOrError->post\_title;
Entrer en mode plein écran Quitter le mode plein écran

2) Arguments nommés : un « prostыней » et un menu disponible dans l'API WP_Query/Bitrix

Arguments nommés — не про красоту. C'est pourquoi vous ne pouvez pas configurer les paramètres.

WordPress : WP_Query sans « угадай, что за массив »

WP_Query propose de nombreux arguments. Dans les « arguments réels » il y a clairement une telle chose que vous avez vos fonctions d'information.

function vp\_query\_posts( int $limit = 10, string $postType = 'post', int $paged = 1, ): \WP\_Query { return new \WP\_Query([ 'post\_type' => $postType, 'posts\_per\_page' => $limit, 'paged' => $paged, 'no\_found\_rows' => true, ]); } // Texte : $q = vp\_query\_posts(limite : 12, postType : 'product', paged : 2);
Entrer en mode plein écran Quitter le mode plein écran

Documentation sur WP_Query (Ajout/Présentation) ...
[Courte citation de 8% de l'article original]

Loading...