Der kürzeste Weg, alle PHP-Typen in Strings umzuwandeln
P粉369196603
2023-09-05 15:34:44
<p>Ich schreibe ein allgemeines System, von dem ich hoffe, dass es eines Tages auf Bereiche wie die Medizin anwendbar sein wird (d. h. es wird „wissenschaftlich“ sein). </p>
<p>Ich denke, der beste Weg ist, alle Daten in PHP mit Strings darzustellen (true wird „true“, false wird „false“ sein und so weiter). Der Grund dafür ist, dass in PHP jeder Wert eine eindeutige Zeichenfolgendarstellung hat (z. B. der PHP-Code selbst). </p>
<p>Ich poste diese Frage, um den Entwurfsprozess dieses Programms zu beschleunigen. </p>
<p>Einige Werte lassen sich leicht in Zeichenfolgen konvertieren: Zahlen, boolesche Werte usw. </p>
<p>Einige sind nicht einfach: Objekte, Arrays, Ressourcen. </p>
<p>Ich denke, das Format zum Übertragen von Objekten und Arrays ist grundsätzlich JSON, aber ich bin mir nicht sicher, ob es genau übereinstimmt. Das ist besser als das, was ich derzeit habe (nichts), aber zumindest möchte ich es irgendwann bis zu einem gewissen Punkt verfeinern. </p>
<p>Irgendwelche Ideen? </p>
这确实是一个雄心勃勃的目标;如此雄心勃勃以至于尝试是愚蠢的。
现在,你可能并不是真的意味着“可以为任何人做任何事”,但你在尝试表示的时候没有设定任何限制是与你的问题相关的。这使得你在寻找序列化格式方面变得不必要地困难。
例如,你提到了资源,PHP用于诸如数据库连接、打开文件句柄等的东西。它们是对一些存在一会儿然后消失的东西的短暂指针,对它们进行序列化不仅在PHP中不受支持,而且几乎没有意义。
与其试图涵盖“一切”,你需要考虑你实际上需要处理哪些类型的数据。也许你主要会使用系统内定义的类,所以你可以定义任何你想要的格式来表示它们。也许你想要处理任意的键值对集合,以PHP数组的形式。你可能希望为将来的扩展留下余地,但这只是关于格式的灵活性,而不是现在就有一个具体的答案。
从那里开始,你可以寻找你想要的属性,并四处逛逛:
显然,列表是无穷无尽的...