That is not part of POSIX, those are only present as you listed on linux systems - some other systems have a /proc with different things in it (sometimes stuff that's symbolic links on linux will be hardlinks, textfiles on linux will be binary, or different files with different information) or none at all
CXX. Fonctions POSIX
Introduction
Ce module contient une interface avec les documents au standard IEEE 1003.1 (POSIX.1), qui ne sont pas accessibles autrement. Par exemple, POSIX.1 définit les fonctions open(), read(), write() et close(), qui ont été traditionnellement des fonctions de PHP 3. Certains fonctionnalités spécifiques ne sont pas encore disponibles, bien que ce module tâche de remédier à cette situation.
| Avertissement |
Des données sensibles peuvent être lues en utilisant les fonctions POSIX, comme posix_getpwnam() et compagnie. Aucune des fonctions POSIX n'est surveillée lorsque le safe mode est activé. Il est donc fortement recommandé de désactiver les fonctions POSIX (à l'aide de l'option de configuration --disable-posix) si vous travaillez dans un tel environnement. |
Note : Cette extension n'est pas disponible sur les plates-formes Windows.
Installation
Le support des fonctions POSIX est activé par défaut. Vous pouvez désactiver ces fonctions en compilant PHP avec l'option --disable-posix.
Constantes pré-définies
Ces constantes sont définies par cette extension, et ne sont disponibles que si cette extension a été compilée avec PHP, ou bien chargée au moment de l'exécution.
- POSIX_F_OK (entier)
Vérifie si le fichier existe.
- POSIX_R_OK (entier)
Vérifie si le fichier existe et a les permissions de lecture.
- POSIX_W_OK (entier)
Vérifie si le fichier existe et a les permissions d'écriture.
- POSIX_X_OK (entier)
Vérifie si le fichier existe et a les permissions d'exécution.
- POSIX_S_IFBLK (entier)
Bloque les fichiers spéciaux
- POSIX_S_IFCHR (entier)
Caractère des fichiers spéciaux
- POSIX_S_IFIFO (entier)
FIFO (pipe nommé) des fichiers spéciaux
- POSIX_S_IFREG (entier)
Fichier normal Normal file
- POSIX_S_IFSOCK (entier)
Socket
Note : Ces constantes sont disponibles depuis PHP 5.1.0. Notez également que quelques unes peuvent ne pas être disponibles sur votre système.
Voir aussi
La section sur le contrôle des processus peut aussi vous interesser.
- Table des matières
- posix_access -- Détermine l'accessibilité d'un fichier
- posix_ctermid -- Retourne le chemin du terminal
- posix_get_last_error -- Lit le dernier numéro d'erreur généré par la dernière fonction POSIX qui a échoué
- posix_getcwd -- Chemin du dossier de travail courant
- posix_getegid -- Retourne l'ID effectif du groupe du processus courant
- posix_geteuid -- Retourne l'UID effectif de l'utilisateur du processus courant
- posix_getgid -- Retourne l'UID du groupe du processus courant
- posix_getgrgid -- Retourne des informations sur un groupe
- posix_getgrnam -- Retourne des informations sur un groupe
- posix_getgroups -- Retourne les identifiants du groupe du processus courant
- posix_getlogin -- Retourne le nom de login
- posix_getpgid -- Retourne l'id du groupe de processus
- posix_getpgrp -- Retourne l'identifiant du groupe de processus
- posix_getpid -- Retourne l'identifiant du processus courant
- posix_getppid -- Retourne l'identifiant du processus parent
- posix_getpwnam -- Retourne des informations sur un utilisateur
- posix_getpwuid -- Retourne des informations sur un utilisateur
- posix_getrlimit -- Retourne les limites système
- posix_getsid -- Retourne le sid du processus
- posix_getuid -- Retourne l'ID de l'utilisateur du processus courant
- posix_isatty -- Détermine si un pointeur de fichier est un terminal interactif
- posix_kill -- Envoie un signal à un processus
- posix_mkfifo -- Crée un fichier FIFO (first in, first out) (un pipe nommé)
- posix_mknod -- Crée un fichier spécial ou ordinaire (POSIX.1)
- posix_setegid -- Modifie le GID réel du processus courant
- posix_seteuid -- Modifie l'identifiant d'utilisateur réel (UID) du processus courant
- posix_setgid -- Fixe le GID effectif du processus courant
- posix_setpgid -- Fixe l'identifiant de groupe de processus
- posix_setsid -- Fait du processus courant un chef de session
- posix_setuid -- Fixe l'UID effective du processus courant
- posix_strerror -- Lit le message d'erreur associé à un numéro d'erreur POSIX
- posix_times -- Utilisation des ressources
- posix_ttyname -- Retourne le nom de device du terminal
- posix_uname -- Retourne le nom du système
don't forget that in posix systems you can use /proc/$process_id/
files:
auxv
cmdline
cwd
environ
exe
fd
maps
mem
mounts
root
stat
statm
status
task
wchan
with it you can make somethings like:
$PPID=getmypid();
$pid=pcntl_fork();
if ($pid==0){
while(1){
if (strpos(file_get_contents("/proc/$PPID/cmdline"),'php')===false) echo "parent pid die";
}
}else{
// forked
}
with this you can use some libs that block signal or some bad signal handling or zombies process or anything you can think :)
