Je viens de commencer à pratiquer avec PHP intégré gettype()
et sa valeur de retour. Cette fonction est capable de retourner le résultat des tests tels que boolean
, integer
, unknown type
, etc. Mais parmi ces résultats de test, il y en a un qui a attiré mon attention: type inconnu. Après avoir lu gettype()
et en essayant de trouver une référence ici, je ne peux pas en obtenir. Donc, la question est de savoir quel type de type peut être catégorisé unknown type
? Est-ce possible ou manque-t-il quelque chose?gettype et type inconnu dans php
12
A
Répondre
19
Voici un type inconnu pour vous:
$f = fopen('somefile.txt','r');
echo gettype($f); // resource
fclose($f);
echo gettype($f); // unknown
En gros, chaque fois qu'un resource pointer est fermé, la variable tenant la poignée pointera vers une ressource inconnue . Un autre exemple serait avec imagecreate/imagedestroy de GD.
Remarque: à partir de PHP 7.2, cela n'est plus vrai. gettype
renverra alors resource (closed)
.
5
Selon le code source PHP c'est le cas "par défaut" dans l'instruction switch pour cette fonction. Ma conjecture est que c'est là un moyen de gérer une erreur interne.
Questions connexes
- 1. ASP.Net et GetType()
- 2. L'utilisation de la fonction anonyme apparaît comme type inconnu
- 3. Refactorisation: Comment refactoriser avec un type inconnu?
- 4. Diffuser avec GetType()
- 5. Expression.Constant (valeur, type) type est inconnu. Comment définir le type
- 6. Windows - Type de fichier inconnu et Windows Web « Recherche »
- 7. Rails/passager/Inconnu Type de contenu
- 8. WPF GridView, Afficher GetType(). Nom dans DisplayMemberBinding
- 9. C# doute GetType, Managed CodeGen
- 10. Obtenir le nombre d'une liste de type inconnu
- 11. Casting pour spécifier un type d'objet inconnu?
- 12. Comment se moquer getType() dans NMock
- 13. Taille de l'objet de type inconnu
- 14. GetType() sur l'élément de tableau?
- 15. GetType sur les types génériques
- 16. Tri par type de colonne inconnu dans mysql
- 17. Fonction générique (de T) - et la comparaison GetType objet
- 18. C# question sur GetType de la classe
- 19. Client PHP Zend XML-RPC - "Type inconnu: i8" lors d'une requête avec Zend_Crypt_Math_BigInteger?
- 20. GetType dans la réflexion .NET ne fonctionne pas
- 21. Recherche du type d'un objet inconnu en C++
- 22. Comment passer un type inconnu à une fonction?
- 23. Comment passer un type inconnu entre deux .NET AppDomains?
- 24. C classe # infantile retour d'un type inconnu (futher: de parent)
- 25. Ajout d'un élément à un ObservableCollection d'un type inconnu
- 26. Exclure la propriété de getType(). GetProperties()
- 27. Échec du serveur: BUG gc_sweep(): type de données inconnu 0x0
- 28. Comment copier un objet d'un type inconnu sur VB.net?
- 29. Échec de GetType sur une classe dans un assembly référencé
- 30. C# gettype d'objet de la classe
Wow, PHP. La sortie de la ressource de fichier "closed" montre toujours "Resource id #x" mais son type est soudainement inconnu. +1 Bonne réponse, bien que – lamas
merci, c'est une excellente réponse. ; D – justjoe
Un autre fait amusant. gettype renvoie "object" pour les fermetures en raison de la façon dont il a été implémenté. –