اعتبارًا من PHP 7، تمت إزالة وظائف mysql_*. تحتاج التطبيقات التي لا تزال تستخدم هذه الوظائف إلى التحديث أو تواجه مشكلات في التوافق. أحد الحلول هو استخدام php7-mysql-shim، وهي مكتبة توفر طبقة توافق تسمح باستخدام وظائف mysql_* في PHP 7 عن طريق تعيينها إلى ما يعادلها من mysqli_*.
php7-mysql-shim هي مكتبة PHP مصممة لتوفير بديل مباشر لوظائف mysql_* المهملة. يسمح هذا للتطبيقات القديمة بالعمل على PHP 7 والإصدارات الأحدث دون الحاجة إلى إعادة كتابة كاملة لتفاعلات قاعدة البيانات.
يمكنك تثبيت php7-mysql-shim عبر Composer، وهو مدير التبعيات لـ PHP.
تثبيت الملحن:
إذا لم يكن برنامج Composer مثبتًا لديك بالفعل، فيمكنك تثبيته باتباع الإرشادات الموجودة على getcomposer.org.
يتطلب php7-mysql-shim:
انتقل إلى دليل مشروعك وقم بتشغيل الأمر التالي لإضافة php7-mysql-shim إلى مشروعك:
composer require doozie-akshay/php7-mysql-shim
require 'vendor/autoload.php';
إليك مثال على التعليمات البرمجية القديمة باستخدام وظائف mysql_*:
// config.php $db_host = 'localhost'; $db_user = 'root'; $db_password = ''; $db_name = 'test'; // Establish connection $connection = mysql_connect($db_host, $db_user, $db_password); if (!$connection) { die('Could not connect: ' . mysql_error()); } mysql_select_db($db_name, $connection);
// check_user.php include_once('config.php'); $query = "SELECT * FROM users WHERE username = 'example_user'"; $result = mysql_query($query, $connection); if (!$result) { die('Query failed: ' . mysql_error()); } if (mysql_num_rows($result) > 0) { echo "User exists."; } else { echo "User does not exist."; } mysql_close($connection);
بعد تثبيت php7-mysql-shim، ما عليك سوى تضمين ملف التحميل التلقائي:
// config.php require 'vendor/autoload.php'; $db_host = 'localhost'; $db_user = 'root'; $db_password = ''; $db_name = 'test'; // Establish connection $connection = mysql_connect($db_host, $db_user, $db_password); if (!$connection) { die('Could not connect: ' . mysql_error()); } mysql_select_db($db_name, $connection);
// check_user.php include_once('config.php'); $query = "SELECT * FROM users WHERE username = 'example_user'"; $result = mysql_query($query, $connection); if (!$result) { die('Query failed: ' . mysql_error()); } if (mysql_num_rows($result) > 0) { echo "User exists."; } else { echo "User does not exist."; } mysql_close($connection);
يهدف php7-mysql-shim إلى توفير التوافق الكامل مع وظائف mysql_*، بما في ذلك معالجة الأخطاء والفروق الدقيقة الأخرى. تأكد من أن رمز معالجة الأخطاء الموجود لديك يظل فعالاً دون تعديل.
يوفر php7-mysql-shim حلاً مباشرًا وفعالاً لتشغيل تطبيقات PHP القديمة التي تستخدم وظائف mysql_* على PHP 7 والإصدارات الأحدث. من خلال تثبيت الرقائق وإدراجها في مشروعك، يمكنك تجنب عمليات إعادة الكتابة الشاملة وضمان التوافق مع إصدارات PHP الحديثة، مما يسمح بالانتقال السلس واستمرار وظائف التطبيق.
تنصل: جميع الموارد المقدمة هي جزئيًا من الإنترنت. إذا كان هناك أي انتهاك لحقوق الطبع والنشر الخاصة بك أو الحقوق والمصالح الأخرى، فيرجى توضيح الأسباب التفصيلية وتقديم دليل على حقوق الطبع والنشر أو الحقوق والمصالح ثم إرسالها إلى البريد الإلكتروني: [email protected]. سوف نتعامل مع الأمر لك في أقرب وقت ممكن.
Copyright© 2022 湘ICP备2022001581号-3