سؤال

وأنا ألعب مع تطبيق PHP مدونة باستخدام خدمة استضافة مشتركة، وذلك كجزء من عملية التعلم PHP بلدي. مزود الخدمة لديه بيئة LAMP النموذجية مع وصول سه البعيد.

كان

وفيم أفضل صديق لي في استكشاف كود PHP. ومع ذلك، وجدت أنه من الصعب في بعض الأحيان لتتبع الأشياء في التعليمات البرمجية في حالة الخطأ. على سبيل المثال، في بعض الأحيان أقوم بزيارة صفحة وحصلت على استجابة فارغة مع أية رسائل خطأ على الإطلاق. كيف ينبغي أن تذهب نحو تصحيح هذا؟ أي أدوات من شأنها أن تكون مفيدة؟

لقد كانت تجربتي أساسا في C / C ++، بيرل وبعض البرمجة CGI. لذلك PHP هو تجربة منعشة جدا معي: -)

في حالة يهم، وتطبيق العب مع غير صالة حفلات ، وأنا لا نملك الكثير من الخيارات على بيئة LAMP نفسها.

وتحرير: أدوات البرمجيات الحرة فضل: -)

هل كانت مفيدة؟

المحلول

وأفترض مزود الاستضافة تكوين تثبيت PHP مع <لأ href = "http://www.php.net/manual/en/errorfunc.configuration.php#ini.display-errors" يختلط = "نوفولو noreferrer" > display_errors إيقاف، وهو أمر جيد. هذا هو السبب في ترونه صفحات فارغة. وبالتالي فإن الحل الأكثر عملية في الوقت الراهن سيكون لديك ملف هتكس الذي يتحول على:

php_flag display_errors on

وكنت أيضا في حاجة error_reporting إلى قيمة مناسبة:

php_flag error_reporting "E_ALL | E_STRICT"

وعلى أي حال، تذكر أن إيقاف هذا قبل السماح للمستخدمين الوصول إلى موقع الويب الخاص بك.

لتصحيح مسبقا انصح Xdebug المثبتة على الملقم مع <لأ href = "HTTP: // www.eclipse.org/pdt/ "يختلط =" نوفولو noreferrer "> الكسوف PDT أو <وأ href =" http://www.netbeans.org/downloads/index.html "يختلط =" نوفولو noreferrer " > ل NetBeans IDE مع دعم PHP كمحرر الخاصة بك. كلاهما عملاء جيدة لتصحيح الأخطاء، ولكن أنا حقا أشك في أي مزود تثبيت Xdebug على أجهزتهم حية. لذلك كنت الى حد كبير غادر مع وظائف تسجيل إذا لم يكن لديك بيئة التطوير.

نصائح أخرى

والحصول على الوصول إلى بيئة التطوير الخاصة المحلية (عن طريق XAMPP، على سبيل المثال) سوف تمكنك من تثبيت XDebug.

وPhpEd من شأنه أن يسمح لك تصحيح ذلك، ولكن أيضا الكسوف PDT البيئة.

وخطأ للبحث عن المفقودين وقطع الأشجار عن طريق ملف التكوين رسائل كتبها هذا المؤلف التحرير فب هو وسيلة جيدة كذلك، وخاصة إذا كنت تستطيع التعامل معه لتسجيل المعلومات. أيضا، النظر في إضافة بيانات التتبع واستخدام FirePHP، على سبيل المثال.

وشخصيا، أود أن أوصي جيديت بدلا من همة. البرنامج المساعد SFTP يسمح لك لتحرير (وأيضا، تحميل وحفظ) وثائق PHP مباشرة على الخادم وسوف المساعد PHPParser اعطيكم بعض الاعتراف الخطأ.

وبالإضافة إلى ذلك، إذا كنت تحصل على صفحة فارغة مع أية رسائل خطأ، وهناك احتمالات هايت أن تلك الرسائل مخفية فقط منك. تأكد من تمكين الإبلاغ عن الأخطاء، سواء في التكوين أو في التعليمات البرمجية الخاصة بك مثل هذا:

// Report all PHP errors
error_reporting(E_ALL);

إذا تم تمكين التقرير عن الخطأ وكنت ما زلت لا أرى أي رسائل، إما <وأ href = "http://de.php.net/manual/en/errorfunc.configuration.php#ini.log-errors" يختلط = "نوفولو noreferrer"> تمكين تسجيل أو تمكين <لأ href = "http://de.php.net/manual/en/errorfunc.configuration.php#ini.display-errors" يختلط = "نوفولو noreferrer "> الإخراج إلى متصفح .

إذا تحصل على صفحة فارغة، هو على الأرجح بسبب خطأ فادح، مع display_errors إيقاف. افتراضيا، سوف PHP تسجيل الأخطاء أباتشي خطأ تسجيل، ولكن يمكنك أيضا تكوين ل<لأ href = "http://www.php.net/manual/en/errorfunc.configuration.php#ini.log-errors "يختلط =" نوفولو noreferrer "> تسجيل الأخطاء إلى سجل منفصلة .

لتصحيح الأخطاء، قد تريد أيضا أن ننظر إلى Xdebug. هذا التمديد يمكن أن تفعل الكثير من الأشياء، بما في ذلك التصحيح التفاعلي. عليك ان تحصل على العميل لاستخدام المصحح، ولكن هناك المساعد للهمة أن يفعل ذلك.

وحاول NuSphere PhpED

مرخصة بموجب: CC-BY-SA مع الإسناد
لا تنتمي إلى StackOverflow
scroll top