20

के बजाय index.php का उपयोग करने के लिए जब मैं अपेक्षाकृत नया php हूं। एक बहुत ही बुनियादी बात है जो मुझे परेशान कर रही है। मैं समझता हूं कि PHP का उपयोग वेब साइटों को गतिशील बनाने के लिए किया जाता है। मैं यह भी समझता हूं कि PHP कई सर्वर साइड स्क्रिप्टिंग भाषाओं में से एक है जिसका उपयोग गतिशील वेब साइट बनाने के लिए किया जा सकता है।index.html

हालांकि, मुझे समझ में नहीं आता कि मुझे index.php पृष्ठ का उपयोग करने की आवश्यकता कब है। उदाहरण के लिए कहें कि अगर मेरे सूचकांक पृष्ठ पर मेरे पास एक साधारण लॉगिन पृष्ठ है, तो यह बहुत ही सरल HTML पृष्ठ भी हो सकता है। सही? तो मैं index.html की बजाय index.php क्यों बनाना चाहूंगा?

नमूना स्थिति का एक उदाहरण बहुत अच्छा होगा।

+0

आप इसे सोच रहे हैं। इसके लिए कोई सख्त नियम नहीं है। यदि पृष्ठ में केवल HTML है, तो आप या तो कार्यक्षमता में उपयोग कर सकते हैं, इससे कोई फर्क नहीं पड़ता है। – itachi

उत्तर

35

जब आप फ़ाइल में PHP कोड निष्पादित करना चाहते हैं तो आपको PHP एक्सटेंशन (.php) चुनना होगा। PHP कोड उद्घाटन <?php या <? और समापन ?> टैग के बीच कोड है।

जब कोई PHP कोड निष्पादित नहीं किया जाना चाहिए तो आप .html एक्सटेंशन का उपयोग कर सकते हैं।

आमतौर पर .php एक्सटेंशन का उपयोग करते समय आप वेब सर्वर को बता रहे हैं, कि इसे ब्राउज़र पर वितरित करने से पहले फ़ाइल को संसाधित करने के लिए एक php दुभाषिया का उपयोग करना चाहिए। पीएचपी दुभाषिया PHP कोड के आउटपुट द्वारा <?php और ?> के बीच सभी सामग्री को प्रतिस्थापित करेगा। जैसे आपने इसे मैन्युअल रूप से लिखा था। संसाधित फ़ाइल तब ब्राउज़र पर पहुंचाई जाएगी।

हालांकि, PHP सर्वर को संसाधित करने के लिए वेब सर्वर को बताने के लिए .php एक्सटेंशन का उपयोग कॉन्फ़िगर करने योग्य है। यदि आप चाहते हैं कि आप अन्य फ़ाइल एक्सटेंशन का भी उपयोग कर सकें।

एक और चीज है जिसे इंगित किया जाना चाहिए। जब आप केवल तरह url पथ (एक फ़ाइल नाम के बिना) टाइप करें:

http://www.myserver.com/ 

वहाँ (फ़ाइल नाम) एक्सटेंशन के एक आदेश है जो एक सूचकांक दस्तावेज़ के लिए वेब सर्वर (अपाचे) खोज करता है। मतलब कि सूचकांक दस्तावेज़ ऊपर के क्रम में की खोज कर रहा है

<IfModule mod_dir.c> 
     DirectoryIndex index.html index.cgi index.pl index.php index.xhtml index.htm 
</IfModule> 

: उदाहरण के लिए एक अपाचे config की तरह एक खंड हो सकती है। इसका अर्थ यह है कि यदि आप एक ही फ़ोल्डर में index.html और index.php डालते हैं - और उपरोक्त कॉन्फ़िगरेशन - हमेशा सूचकांक। एचटीएमएल सर्वर द्वारा वितरित किया जाएगा।

+0

बहुत अच्छा जवाब है, लेकिन गति के बारे में क्या? यदि आप HTML कोड को शामिल करने के लिए आवश्यक PHP कोड का उपयोग नहीं करते हैं, तो क्या यह आपके पृष्ठ को धीमा कर देता है, जिसे आप सीधे index.html में लिख सकते थे? – henk

+0

@rave यदि आप एक्सटेंशन '.html' का उपयोग करते हैं तो कोई PHP निष्पादित नहीं होता है। – hek2mgl

+0

हाँ मैं समझता हूं। लेकिन मेरा मतलब क्या है: तेजी से क्या है उदा। : index.html = "...

कुछ पाठ

..." या index.php = "... somehtmlfile.html =" ...

कुछ पाठ

... "। तो आप 'somehtmlfile.html' से सीधे index.html में कोड लिख सकते हैं या आप index.php का उपयोग कर सकते हैं और फिर अन्य फ़ाइलों को कुछ HTML कोड आउटसोर्स कर सकते हैं, लेकिन क्या इससे आपका पृष्ठ धीमा हो जाता है? – henk

4

आप जो भी पसंद करते हैं उसका उपयोग कर सकते हैं: यदि आप HTML और में डेटा का उपयोग नहीं करते हैं और उन पृष्ठों को रखते हैं जो php प्रारूप में PHP का उपयोग करते हैं तो ठीक है।

लेकिन एक और तरीका I और मुझे लगता है कि अधिकांश अन्य लोगों का उपयोग केवल आपके सभी पृष्ठों php फ़ाइलों को बनाते हैं। ऐसा इसलिए है क्योंकि आप php फ़ाइल में एक HTML दस्तावेज़ शामिल कर सकते हैं और इसे वही प्रदर्शित कर सकते हैं। लेकिन आप एक एचटीएमएल फाइल से PHP प्रश्न नहीं कर सकते हैं, इसलिए हमेशा PHP का उपयोग करना आसान होता है, बस इसमें कुछ php स्क्रिप्ट जोड़ना चाहते हैं।

index.php:

<?php 
$var = 5; 
?> 
<html> 
<head> 
<title>My Page</title> 
</head> 
<body> 
<h2>Your variable was <?php echo $var; ?></h2> 
</body> 
</html> 
2

यह वजह है कभी कभी आप कुछ index.php पर लिखा तर्क हो सकता है। जैसे आप जांच सकते हैं कि उपयोगकर्ता लॉग इन है या नहीं और फिर उपयोगकर्ता को किसी विशिष्ट पृष्ठ पर रीडायरेक्ट करें। मोबाइल उपकरणों के मामले में आप डिवाइस आधारित पुनर्निर्देशन भी कर सकते हैं।

आप हमेशा index.html बनाने का चयन कर सकते हैं लेकिन आपको नहीं पता कि आपको वहां कुछ तर्क होने की आवश्यकता हो सकती है।

4

डिफ़ॉल्ट रूप से, अपाचे सर्वर के अंदर यह PHP कोड पार्स करने के लिए .php एक्सटेंशन वाली फ़ाइल की जरूरत है। यद्यपि, यदि आप चाहें, तो आप कॉन्फ़िगरेशन फ़ाइल में एक पंक्ति जोड़कर, अपने सर्वर को कॉन्फ़िगर कर सकते हैं, इसके अंदर PHP कोड के साथ किसी भी एक्सटेंशन के साथ फ़ाइलों का उपयोग करने के लिए। PHP में भी PHP समर्थन का समर्थन करने के लिए आप अपाचे को संपादित कर सकते हैं।

5

यह कोई बड़ा सौदा नहीं है कि आप index.php या index.html का उपयोग करते हैं या नहीं। आप किसी के भी इस्तेमाल करते हैं। आपकी साइट को गतिशील बनाने के लिए केवल एक चीज है कि आपको PHP (या कोई अन्य सर्वर साइड स्क्रिप्टिंग भाषा) चाहिए।

आपके पास लॉगिन पृष्ठ है, तो आप निश्चित रूप से इसे inde.html के रूप में बना सकते हैं लेकिन आपके तर्क को या तो एक अलग फ़ाइल में होना चाहिए या HTMl में एम्बेड किया जाना चाहिए।

6

यदि आप प्रत्येक पृष्ठ को .php के रूप में सेवा करते हैं तो यह किसी वेबसाइट को चोट नहीं पहुंचाएगा। अपाचे किसी भी php की सेवा करने के लिए बहुत तेज़ है, अकेले रहने दें जिसमें केवल स्थिर HTML है।

एक शुरुआत के रूप में आप पाएंगे कि PHP आपको सरल टेम्पलेट्स बनाने की अनुमति देकर लाभान्वित होगा। साइट हेडर और पाद लेख उदाहरण के लिए एक फ़ाइल में लिखा जा सकता है, फिर अन्य सभी पृष्ठों में शामिल किया जा सकता है।

2

सरल शब्दों में, आप आसानी से index.html फ़ाइल तक पहुंच सकते हैं और इसके नीचे डेटा प्राप्त कर सकते हैं। लेकिन index.php तक पहुंचना मुश्किल है। आपके सरल एप्लिकेशन index.html के लिए चाल चल जाएगी। आप कुछ बड़े और सुरक्षित आवेदन के लिए योजना बना रहे हैं index.php

के लिए जाना
1
साथ apache2 में फाइल एक्सटेंशन प्राथमिकता के लिए वर्तमान सेटिंग जांचने के लिए

मुझे भी एक ही समस्या साथी है। लेकिन, मुझे लगता है कि .php .html से काफी बेहतर है क्योंकि यह अधिक गतिशील है और आप भी कूल सामान का एक गुच्छा कर सकते हैं।