我查看过鸟哥的几个扩展,都是新拉个分支来写php7版的扩展;
而swoole扩展,倒是使用了个php7-swapper.h来包装,但是它里面使用的php内核的东西相对来说比较好用宏来操作。
比如,在php5版扩展下有如下定义:
<code>typedef struct _test_obj { zend_object std; // 放到头部 my_test_struct *my; int count; } test_obj; </code>
根据php7扩展改进意见,该结构体需要修改为:
<code>typedef struct _test_obj { my_test_struct *my; int count; zend_object std; // 放到尾部 } test_obj; </code>
等等,要是使用 宏
来包装,就会让代码看起来比较丑点,但是如果不这样,分两个分支开发的话,那每次都要修改两份代码,也比较费事。
不知道各位老大有什么好的思路,求赐教,谢谢!
回复内容:
我查看过鸟哥的几个扩展,都是新拉个分支来写php7版的扩展;
而swoole扩展,倒是使用了个php7-swapper.h来包装,但是它里面使用的php内核的东西相对来说比较好用宏来操作。
比如,在php5版扩展下有如下定义:
<code>typedef struct _test_obj { zend_object std; // 放到头部 my_test_struct *my; int count; } test_obj; </code>
根据php7扩展改进意见,该结构体需要修改为:
<code>typedef struct _test_obj { my_test_struct *my; int count; zend_object std; // 放到尾部 } test_obj; </code>
等等,要是使用 宏
来包装,就会让代码看起来比较丑点,但是如果不这样,分两个分支开发的话,那每次都要修改两份代码,也比较费事。
不知道各位老大有什么好的思路,求赐教,谢谢!
用户体验最佳的方式就是通过宏来写,这样用户就不必选择版本。当然这样写的弊端就是两块代码交叉会混杂,毕竟PHP7对基础架构改动颇大,虽然PHP7中自带的大部分宏还遵循老版本的写法,但堆上申请变量,一些与引用机制相关的,以及其他常用的宏都有所改变,所以合并写一块挑战还是挺大的。如果觉得麻烦,就如鸟哥一样分开写吧,目前大部分扩展也已分开的模式先进行编写,等较成熟时再合并到一起。
@有明 多谢,现在确定先分开写,等php7彻底稳定了再看看。

PHPSSIONS CANSTORESTRINGEN, ZUGNALTEN, ARRAYS, ANDOBjekte.1.

TostartaphpSession, useSession_start () atthescript'Sbeginning.1) PlaCEITBEFOREANYOUTPUTTOTHESESSIONSCOOKIE.2) useSsionsforuserDatalikeloginStatusOrShopingCarts

Die Sitzung der Sitzung bezieht sich auf die Generierung einer neuen Sitzungs -ID und die Ungültigmachung der alten ID, wenn der Benutzer sensible Vorgänge bei festgelegten Sitzungsangriffen ausführt. Die Implementierungsschritte umfassen: 1. Erkennen sensibler Vorgänge, 2. Erstellen neuer Sitzungs-ID, 3..

PHP -Sitzungen haben erhebliche Auswirkungen auf die Anwendungsleistung. Zu den Optimierungsmethoden gehören: 1. Verwenden Sie eine Datenbank, um Sitzungsdaten zu speichern, um die Antwortgeschwindigkeit zu verbessern; 2. Reduzieren Sie die Verwendung von Sitzungsdaten und speichern Sie nur die erforderlichen Informationen. 3.. Verwenden Sie einen nicht blockierenden Sitzungsprozessor, um die Parallelitätsfunktionen zu verbessern. 4. Passen Sie die Ablaufzeit der Sitzung an, um Benutzererfahrung und Serverbelastung auszugleichen. 5. Verwenden Sie persistente Sitzungen, um die Anzahl der Les- und Schreibzeiten zu verringern.

PhpSessionsaresServer-Side, whilecookiesareclient-Side.1) SESSIsions Storedataontheserver, Aremoresecure und Handlelargerdata.2) CookieStoredataoneTheClient, AslosenSecure und LimitedInsiesindaSsibilitäts- und -Stasibilitäts- und -Stasibilitäts- und -Anssibilitäts- und -Anssibilitätsporsedataandcookiesefornonsesibel, adailliertes, adailliertes, adailliertes, adailliertes, adailliertes, addiertes-addiertes- und -Staillieren- und -Anssistieren, und -Anssibilitätsporsedaten- und -Sta- und addierta und -Anssibilitäts- und addiertes- und addailliert.

PhpidentifiesAsersSSessionUsingSSessionCookiesAndSessionIDs.1) WHANE Session_Start () iscalled, phpGeneratesAuniqueSessionIDStoredInacookienMamePhpSsidontonTheusers.2) thisidallowStoretrieVessionDataFromtheServer.

Die Sicherheit von PHP -Sitzungen kann durch folgende Maßnahmen erreicht werden: 1. Verwenden Sie Session_regenerate_id (), um die Sitzungs -ID zu regenerieren, wenn sich der Benutzer anmeldet oder eine wichtige Operation ist. 2. Verschlüsseln Sie die Übertragungssitz -ID durch das HTTPS -Protokoll. A. Verwenden Sie Session_save_path (), um das sichere Verzeichnis anzugeben, um Sitzungsdaten zu speichern und Berechtigungen korrekt festzulegen.

PhpSessionFilesArestoredinTHedRectorySpecifiedBySession.save_path, typischerweise/tmponunix-likesystemsorc: \ windows \ temponwindows


Heiße KI -Werkzeuge

Undresser.AI Undress
KI-gestützte App zum Erstellen realistischer Aktfotos

AI Clothes Remover
Online-KI-Tool zum Entfernen von Kleidung aus Fotos.

Undress AI Tool
Ausziehbilder kostenlos

Clothoff.io
KI-Kleiderentferner

Video Face Swap
Tauschen Sie Gesichter in jedem Video mühelos mit unserem völlig kostenlosen KI-Gesichtstausch-Tool aus!

Heißer Artikel

Heiße Werkzeuge

MinGW – Minimalistisches GNU für Windows
Dieses Projekt wird derzeit auf osdn.net/projects/mingw migriert. Sie können uns dort weiterhin folgen. MinGW: Eine native Windows-Portierung der GNU Compiler Collection (GCC), frei verteilbare Importbibliotheken und Header-Dateien zum Erstellen nativer Windows-Anwendungen, einschließlich Erweiterungen der MSVC-Laufzeit zur Unterstützung der C99-Funktionalität. Die gesamte MinGW-Software kann auf 64-Bit-Windows-Plattformen ausgeführt werden.

EditPlus chinesische Crack-Version
Geringe Größe, Syntaxhervorhebung, unterstützt keine Code-Eingabeaufforderungsfunktion

Herunterladen der Mac-Version des Atom-Editors
Der beliebteste Open-Source-Editor

Notepad++7.3.1
Einfach zu bedienender und kostenloser Code-Editor

SublimeText3 Englische Version
Empfohlen: Win-Version, unterstützt Code-Eingabeaufforderungen!
