planetePHP.fr
Hello Design 2017-03-26T17:20:06+02:00

Les macottes Open Source dans Programmez 205

couverture programmez 205, mars 2017 Pour ce numéro de mars 2017, le magazine PROGRAMMEZ, propose un dossier spécial "Souriez ! Vous êtes analysé(e)s !".



Ce dossier couvre de nombreux sujets, avec plusieurs articles :

On parle beaucoup de technologies et d’API cognitives, sans toujours savoir ce qu’il se cache réellement derrière ce terme. Il s’agit de services, de SDK, d’API, de technologies qui vont permettre de capturer, d’analyser, d’interpréter des comportements, des émotions, des environnements, de la parole, des langues, des objets, etc. Ces services peuvent être intégrés à des... lire la suite

Par ailleurs, ce numéro publie de nombreux articles utiles comme :

  • Matériel
  • Docker
  • Le Futur
  • Geekulture
  • Web
  • VR
  • etc.



Pour ma part, j'ai co-signé l'article suivant :

"Le bestiaire de l’Open Source : vive les mascottes !"

À l’inverse des très sérieuses et représentatives fenêtres, pommes croquées ou lettres stylisées façon années 80, les projets Open Source ont toujours préféré utiliser comme mascottes tout un bestiaire d’animaux, réels, fabuleux ou créés spécifiquement. Le choix de ces animaux est rarement...

lire la suite



Ainsi, vous verrez les naissances de l'elePHPant PHP, Le renard de Firefox, le pingouin Linux et beaucoup d'autres animaux.

Consulter le magazine Programmez 205 en ligne


Remi Collet Remi Collet 2017-03-25T11:22:26+01:00

Paquets PHP suplémentaires pour RHSCL

Point de situation sur les dépôts officiels fournissant les Software Collections de PHP pour les utilisateurs de RHEL et de CentOS.

Depuis la publication de RHSCL 2.3, les utilisateurs de RHEL peuvent installer PHP 5.6 ou PHP 7.0 sans altérer leur système en utilisant le canal approprié.

Ces paquets sont aussi disponibles pour les utilisateurs de CentOS dans les dépôts SCL, géré par le groupe d'intérêt SCLo (SCLo SIG) :

# yum --enablerepo=extras install centos-release-scl

Le project CentOS fournit donc l'infrastructure et l'hébergement de 4 dépôts:

  • centos-sclo-rh : fournissant le même contenu que RHSCL
  • centos-sclo-sclo : fournissant des collections supplémentaires maintenues par la communauté
  • centos-sclo-rh-testing : fournissant les paquets à tester (version beta de RHSCL)
  • centos-scl-sclo-testing : fournissant les paquets à tester maintenus par la communauté

Les utilisateurs de RHSCL souhaitant utiliser les paquets supplémentaires peuvent configurer le dépôt centos-sclo-sclo en utilisant le dépôt Copr centos-release-scl :

# cd /etc/yum.repos.d/
# wget https://copr.fedorainfracloud.org/coprs/rhscl/centos-release-scl/repo/epel-7/rhscl-centos-release-scl-epel-7.repo
# yum install centos-release-scl

Si vous êtes intéressés par ces paquets, je vous recommande de suivre la liste de diffusion sclorg@redhat.com ou sont discutés les éventuels problèmes et annoncées les évolutions. Merci d'utiliser cette liste pour vos retours (paquets en test) et toute autre demande. Les nouveaux contributeurs sont aussi les bienvenus.

Information et documentation sur https://www.softwarecollections.org/.

Le développement est suivi sur le git de sclorg-distgit.

Pour information, voici les paquets supplémentaires disponibles dans centos-sclo-sclo le 23 février 2017:

#   Paquet Version Distribution Remarques
 

la suite...

Stéphane Brun (sbnet) Stéphane Brun (sbnet) 2017-03-24T13:44:32+01:00

Une courte introduction aux Promises

La programmation synchrone comme en PHP ou en Python est simple à appréhender, une étape à la fois, chaque instruction est exécutée l’une après l’autre. Mais lorsque vous regardez un peu ce qu’il se passe du coté de nodejs et du … Lire la suite
sbnet?d=yIl2AUoC8zA sbnet?d=7Q72WNTAKBA sbnet?i=EAGx-YcuP5w:pzPRBW7Bjk8:V_sGLiPBpWU sbnet?d=qj6IDK7rITs sbnet?i=EAGx-YcuP5w:pzPRBW7Bjk8:gIN9vFwOqvQ
AFUP AFUP 2017-03-21T00:00:00+01:00

L'AFUP soutient la 2ème édition du ZendDay

Cette seconde édition du ZendDay viendra apporter un coup de projecteur sur la communauté Zend. Vous êtes attendus le 13 avril à Paris XIIème, à l'école ESGI. Au programme de cette demi-journée : 

- 150 participants,
- 4 conférences avec Marco Pivetta, Damien Seguy, Cédric Derue et Martin Supiot,
- 1 moment de networking et coffee break,
- 1 concours pour gagner des goodies !

Plus de détails sur les différentes interventions et  les inscriptions sont à retrouver sur le site de l'événement

Darkmira organise régulièrement des événements en France et au Brésil, comme le 1er Zend Day, le Darkmira Tour ou encore le Darkmira Circus. 

Perrick Penet (onpk.net) Perrick Penet (onpk.net) 2017-03-19T16:51:12+01:00

Huit bouquins lus, la quatorzième vague

  1. Contact de Matthew B. Crawford
    La suite de lexploration du réparateur de moto philosophe : cette fois-ci M. Crawford nous plonge dans les affres de la modernité. Lévolution des aventures des personnages de Disney (de Mickey à Donald Duck en passant par Dingo) en est un marqueur : dabord décontenancés par les objets dun quotidien récalcitrant - et donc forcément très drôles - ils ont désormais une boîte magique avec des outils capable de répondre parfaitement à nimporte quelle situation. Leffet burlesque a disparu, la matière est escamoté et le réel perd toute aspérité. Cette quête dun rapport désirable avec le monde, parce que formateur et enrichissant, le mènera à explorer la musique des salles de sport YMCA et Kant ou Kierkegaard, lAméricain statistiquement moyen et les tuyaux dorgue de Taylor & Boody. Des allers-retours entre lecture de philosophie classique et analyse des gestes du travail ordinaire très féconds. livres.onpk.net
  2. Chez soi : une odyssée de l'espace domestique de Mona Cholet
    Fan de Mona Cholet depuis ses longs essais dans Périphéries, jadore sa façon si particulière décrire des livres : un véritable papillonnage de références érudites en extraits éclairants pour défricher un terrain, la maison cette fois. Un battement de page ma donné envie daller voir du côté de Christopher Alexander et de son classique A Pattern Language: Towns, Buildings, Constructionsi cher à tous les développeurs qui ont étudié nos fameux Design Patterns. Un autre nous mène à une comparaison entre les elfes dHarry Potter et les travailleurs uberisés. Et toujours des références au féminin, comme ses pages autour du livre The Feminine Mystique : y entrevoir la chape de plomb, mortifère, glaçante et terrible, quon subit les Américaines avant 1963, effraie. Littéralement. Et visiblement elles ne veulent pas la voir revenir. livres.onpk.net
  3. Petite poucette de Michel Serres
    Un livre trop court et trop superficiel pour mavoir intéressé durablement. livres.onpk.net
  4. Tout peut changer : Capitalisme & changement climatique de Naomi Klein
    Ce gros volume est alarmant : tout dabord sur les méfaits de lindustrie extractiviste, mais aussi sur le combat idéologique mené des mécènes tantôt malveillants, tantôt opportunistes mais toujours fortunés.

la suite...

AFUP AFUP 2017-03-14T00:00:00+01:00

Premiers noms dévoilés pour le PHP Tour 2017 à Nantes !

Le cycle de conférences itinérant profite en général de ses étapes pour se pencher sur une problématique particulière, en fonction du tissu d'entreprises de sa région d'accueil.

Mais l'événement ayant déjà proposé un programme en lien avec les thématiques chères aux entreprises nantaises en 2012, il sera cette fois question du futur ! PHP a célébré ses 20 ans en 2015, mais ne s’endort pas pour autant sur ses lauriers. Le langage a le regard obstinément tourné vers l’avenir et le programme du PHP Tour 2017 reflète cette vivacité : les conférences vont couvrir le large spectre de PHP.

Du cœur de PHP (“Opcode ? Mais à quoi ça sert ?” de Benoît Jacquemont) aux applications les plus inattendues (assistant d’envoi de mails avec “My slack bot speaks PHP” de Gilles Felix), des normes (“PSR : quoi, pourquoi, comment ?” de Julien Janvier) à la créativité (patrons de conception innovants), du concepteur au sysadmin, les premiers talks annoncés confirment le dynamisme du langage. Les retours d’expérience seront également nombreux, et comme toujours, quelques invités internationaux, comme Julien Pauli (core dev de PHP) et Juliette Reinders Folmer (Architecte PHP) nous feront le plaisir de venir partager leur expérience avec la communauté.

La billetterie est ouverte ! Ne tardez pas à réserver vos places : le C.C.O. a une capacité légèrement moindre comparée aux salles qui ont accueilli nos événements précédents, et les dernières éditions de nos cycles de conférences ont annoncé complet plusieurs jours -voire semaines !- à l'avance. Ne manquez pas le grand événement du printemps de la communauté PHP, et rejoignez-nous à Nantes !

Remi Collet Remi Collet 2017-03-13T08:02:53+01:00

Ma station de travail PHP

Je vois régulièrement passer des questions sur l'utilisation d'anciennes versions de PHP sur Fedora (qui fournit la 5.6) ou de versions plus récentes sur RHEL / CentOS (qui fournit la 5.4).

Un développeur utilisant PHP a souvent besoin de tester son travail avec plusieurs versions. Donc voici un petit descriptif de la station de travail que j'utilise quotidiennement

Système d'exploitation : Fedora 23 Workstation x86_64 (mais les exemples fonctionnent aussi sur RHEL ou CentOS 7)

Dépôts tiers : rpmfusion (pour écouter de la musique en travaillant) et évidement remi

# wget http://rpms.remirepo.net/fedora/remi-release-23.rpm
# dnf install remi-release-23.rpm
# dnf config-manager --set-enabled remi

 

Installation des versions de PHP

J'utilise les Software Collections qui permettent d'installer plusieurs versions en parallèle sans toucher au système de base, les versions de PHP 5.4, 5.5, 5.6, 7.0 et 7.1 sont disponibles dans mon dépôt, donc:

# yum install  php54 php54-php-fpm php54-php-mbstring php54-php-mysqlnd ...
# yum install  php55 php55-php-fpm php55-php-mbstring php55-php-mysqlnd ...
# yum install  php56 php56-php-fpm php56-php-mbstring php56-php-mysqlnd ...
# yum install  php70 php70-php-fpm php70-php-mbstring php70-php-mysqlnd ...
# yum install  php71 php71-php-fpm php71-php-mbstring php71-php-mysqlnd ...

Les utilisateurs de RHEL peuvent aussi utiliser les SCL officielles disponible dans le canal RHSCL (php54, php55, rh-php56 et rh-php70).

Les utilisateurs de CentOS peuvent aussi utiliser les SCL, maintenues par le SIG, disponibles dans le dépôt centos-sclo-sclo.

 

Configuration de l'environnement Web

PHP FastCGI Process Manager

Je n'utilise pas mod_php qui n'autorise qu'une seule version du module, mais FPM.

Je ne suis pas en production mais sur une station de développement, donc afin de limiter la charge, je modifie la configuration de chaque FPM pour utiliser le mode "ondemand". J'utilise aussi un port réseau différent pour chaque version

Example, pour PHP 7.0, dans le fichier /etc/opt/remi/php70/php-fpm.d/www.conf

listen = 127.0.0.1:9070
pm = ondemand

Je configure le port pour SELinux

# semanage port -a -t http_port_t -p tcp 9070

Et ensuite j'active le service

# systemctl start php70-php-fpm
# systemctl enable php70-php-fpm

Et j'applique pour chaque version.

la suite...

Perrick Penet (onpk.net) Perrick Penet (onpk.net) 2017-03-08T14:10:26+01:00

Demain, un Super Apéro PHP ! Une Super Journée AFUP en 2019 ?

Depuis le PHP Tour à Lille en 2011, plus grand chose ne sy passait côté AFUP dans la capitale des Hauts-de-France. Il y avait bien eu la création dune antenne locale mais finalement peu dapéros. Heureusement les SfPots ont pris le relais : cette dynamique a abouti au dossier de candidature pour le PHP Tour 2018. Les esprits chagrin retiendront quil na été retenu cette année (bravo Montpellier), mais il le sera plus tard cest certain. Mais encore une fois comment conserver cette envie daller de lavant ?

Ce 9 mars 2017 est devenu en moins dun mois le grand rendez-vous de toutes les villes qui font du PHP au quotidien. On y retrouve bien sûr celles qui ont déjà leurs apéros réguliers (comme Paris ou Lyon) mais surtout toutes celles dont la dynamique sétait essoufflée (Lille donc, mais aussi Bordeaux ou Luxembourg) ou celles qui émergent (Poitiers, Montpellier, Reims). Tous ces micro-évènements sont la preuve quil faut du rythme pour quune association tienne, quil faut des rendez-vous réguliers.

Pendant longtemps tout nouveau bureau de lAFUP a eu une mission non-négociable : faire en sorte que le Forum PHP soit organisé. Le reste du programme dun bureau est bien sûr important mais jamais impératif. Seul le Forum PHP lest. Il est synonyme de vie pour tous les membres. Depuis le PHP Tour sest installé : il permet à une ville dimpulser une dynamique sur un territoire (Luxembourg ou Montpellier en sont les meilleurs exemples) ou dapporter un coup de projecteur sur des actions de terrain régulières et de qualité (plutôt le cas de Clermont-Ferrand).

Jai limpression quon détient avec ce Super Apéro, une formule intéressante pour permettre le développement des antennes locales : une formule souple (un bar et un organisateur dans une ville suffise pour se lancer) et une date fixe (la motivation des villes en dépend). Il ne reste plus quaux plus motivés dy adjoindre une journée ou une après-midi de conférences et dappeler ça : « la Super Journée AFUP ».

Ainsi on nempiète pas sur le PHP Tour (qui reste à 2 jours), on se permet de faire plus quun apéro en profitant de leffervescence nationale. Les lillois, dans votre dossier du PHP Tour 2018 il y a tout (lieu, speakers, thème, sponsors) : on la monte, cette journée spéciale ?

Remi Collet Remi Collet 2017-03-05T11:45:28+01:00

Apéro PHP à Reims

L'Association Française des Utilisateurs de PHP (AFUP) organise ce Jeudi 9 mars un Super Apéro PHP qui se déroulera simultanément dans 14 grandes villes.

Pour la première fois, Reims rejoint le mouvement, en partenariat avec l'association Logiciel Libre en Champagne-Ardenne (LoLiCA) et organise le premier Apéro PHP rémois.

L'objectif est évidement de passer un moment convivial entre passionnés de PHP et d'échanger autour de ce langage, mais aussi de discuter de l'organisation régulière de ce type de rencontre, de la création d'une antenne officielle de l'AFUP à Reims, et pourquoi pas de trouver des entreprises intéressées pour nous aider (sponsoriser) pour l'organisation d'une rencontre plus formelle (meetup) ou serait proposé quelques conférences.

N'hésitez pas à nous rejoindre (inscrivez vous, même si cela n'est pas obligatoire) ou à me laisser un message si vous ne pouvez venir, mais seriez intéressés par ces actions et de futures rencontres. Pour nous trouver, cherchez l'éléPHPant qui sera présent à notre table.

Aussi présent sur l'Agenda du Libre.

Remi Collet Remi Collet 2017-03-02T07:19:36+01:00

ZipArchive avec chiffrement

Un petit point d'avancement du développement de l'extension zip version 1.14.0 qui intègre désormais le support des archives chiffrées.

L'implémentation de cette nouvelle fonctionnalité repose sur l'utilisation de la bibliothèque libzip version 1.2.0 récemment publiée.

Actuellement seule la compilation avec la bibliothèque système offre ce support, mais une mise à jour de la version embarquée est prévue.

Lorsque tout sera validé, la version sera publiée et intégrée aux sources de php (ext/zip), sans doute pour PHP 7.2.

il s'agit d'un développement en cours, rien n'est définitif, et les méthodes proposées peuvent encore changer.

Installation en RPM

Le paquet php-pecl-zip-1.4.0.0-0.2.20170301dev est disponible dans le dépôt remi-test (et remi-php70-test, remi-php71-test).

Installation depuis les sources

Depuis un clone des sources disponibles dans github :

$ phpize
$ ./configure --with-libzip
...
checking for libzip... from pkgconfig: version 1.2.0 found in /usr/lib64
checking for zip_open in -lzip... yes
checking for zip_file_set_encryption in -lzip... yes
...
$ make
...
Build complete.
Don't forget to run 'make test'.
$ make test
...
PASS ZipArchive::setEncryption*() functions [tests/oo_encryption.phpt]

Création d'un archive chiffrée

Trois méthodes permettent de gérer le cryptage

ZipArchive::setEncryptionName($name, $method [, $password]);
ZipArchive::setEncryptionIndex($index, $method [, $password]);
ZipArchive::setPassword($password);

Le choix de la méthode de chiffrement devant être une des constantes ZipArchive::EM_NONE, ZipArchive::EM_AES_128, ZipArchive::EM_AES_192 ou ZipArchive::EM_AES_256.

Exemple 1 :

Mot de passe par fichier

$zip = new ZipArchive;
$zip->open(__DIR__ . '/encrypted.zip',   ZIPARCHIVE::CREATE | ZipArchive::OVERWRITE);
$zip->addFile(__FILE__, 'foo.php');
$zip->setEncryptionName('foo.php', ZipArchive::EM_AES_256, 'secret');
$zip->close();

Exemple 2 :

Mot de passe par defaut (global)

$zip = new ZipArchive;
$zip->open(__DIR__ . '/encrypted.zip',   ZIPARCHIVE::CREATE | ZipArchive::OVERWRITE);
$zip->setPassword('secret');
$zip->addFile(__FILE__, 'foo.php');
$zip->setEncryptionName('foo.php', ZipArchive::EM_AES_256);
$zip->close();

Lecture d'une archive chiffrée

Exemple :

$zip = new ZipArchive;
$zip->open(__DIR__ . '/encrypted.zip');
print_r($zip->statName($file));
$zip->setPassword('secret');
$text = $zip->getFromName('foo.

la suite...


Flux ATOM

Flux RSS
Twitter

Les sources

Ajouter une source ?

Envoyez un email avec l'URL du site et du flux à planetephpfr AT afup POINT org

Infos