عزيزي .. ما الداعي للإصدارة الثالثة مادامت الإصدارة 2.8 قياسية (Standard) ومستقرة (Stable) ؟!
دعني أخبرك بشيء:
- SQLite 2 تأتي جاهزة مع PHP5 كما ذكرنا سابقا.
وهي متوفرة أيضا لـ PHP 4 كملحق PECL على الرابط الذي ذكرته أول الموضوع.
- أما SQLite3 فلا يمكن استخدامها مع PHP إلا عن طريق مكتبة PDO فحسب و ....
حسنا .. سأضطر الآن لذكر شيء من التفصيل حول PDO وكيفية تركيبه ..
(PDO) مختصر PHP Data Objects وهي واجهة أو طريقة للوصول إلى قواعد البيانات بطريقة كائنية المنحى (OOP)
و PDO تأتي أيضا جاهزة مع PHP 5.1 ومتوفرة كملحق PECL لـ PHP 5.0.
ولا يمكن إضافتها على PHP 4 كملحق PECL لأنها تستخدم مزايا OOP المدمجة في أصل PHP 5 (الحمد لله).
يمكن استخدام الأمر التالي على أنظمة Unix-Like لتركيبها:
ثم بإضافة السطر التالي إلى ملف php.ini:
أما مع PHP 5.1 على ويندوز فيمكن انتقاء المناسب من الأسطر التالية لإضافته لملف php.ini:
الملحق الرئيس:
كود:
extension=php_pdo.dll
الملحقان الخاصان بـ MySQL و SQLite:
كود:
extension=php_pdo_mysql.dll
extension=php_pdo_sqlite.dll
ولبقية قواعد البيانات:
كود:
extension=php_pdo_odbc.dll
extension=php_pdo_firebird.dll
extension=php_pdo_informix.dll
extension=php_pdo_mssql.dll
extension=php_pdo_oci.dll
extension=php_pdo_oci8.dll
extension=php_pdo_pgsql.dll
وللعلم فإن PDO توفر Data-access Abstraction Layer لكنها في نفس الوقت ليست Database Abstraction Layer (حسب وثائق php.net) !
أي إذا استخدمت شيفرة مريعة بـ PDO و أردت Abstraction Layer لقواعد بيانات متعددة فعليك استخدام Class آخر يزودك بتلك المزية مثل ADOdb و Metabase و PHPLib ونحوهم !
من خاض في مستنقع OOP مع قواعد البيانات المختلفة سيفهم العبارة السابقة.
بالمناسبة يوجد Class اسمه
PDO for PHP 4 للتوافقية مع شيفرات PHP 5
http://www.phpclasses.org/browse/package/2572.html
وهو مجرد فئة برمجية (PHP Class) و ليست (PHP Extention) لذلك أتوقع ألا يعمل مع SQLite 3 و PHP 4، لكن من يدري .. لعلي مخطئ في تقدير ذلك.
أعتقد أن من يفكر باستخدام تلك الكائنات (Objects) المرعبة يستحق ما سيحل به لاحقا : )
فقد كنت ولا زلت أعتقد أن المحترف الحقيقي هو الذي يكتب برنامجا قويا يفهمه الجميع.
ويمكن كتابة نفس الشيفرة بطريقتين:
إحداهما: طريقة بسيطة جزلة يسيرة، والثانية: معقدة ومتشعبة لا يكاد يفهمها إلا صاحبها، وقد لا يستوعبها بعد مرور أشهر على كتابته لها.
أمر آخر أحب أن أهمس لك به:
Fedora هو حقل تجارب لإصدارات البيتا الخاصة بـ RedHat.
إذا كنت تريد استخدام نظام مجاني فيمكنك الحصول على نسخة من Redhat Advanced Server ونحوه عبر التسجيل في موقع Redhat.com.
أو يمكنك استخدام الأنظمة الأخرى المبنية على شيفرة Redhat مثل:
ـ CentOS
ـ WhiteBox
ـ Oracle Unbreakable Linux
وغيرها الكثير.
وقد شرحت كيفية بناء نظام خاص من الشيفرة المصدرية لـ RedHat AS وتخصيصه في أحد منتديات لينوكس العام الماضي.