2009-10-21 19 views
6

मैं एक वेब पेज विकसित कर रहा हूं जिस पर मैं उपयोगकर्ता से इनपुट शब्द स्वीकार कर रहा हूं, और जब उपयोगकर्ता उन शब्दों को प्रस्तुत करता है, तो मैं उन शब्दों की परिभाषा प्रदर्शित करना चाहता हूं, या उस शब्द के बारे में अधिक परिभाषा के लिए उन शब्दों के विकिपीडिया लिंक प्रदर्शित करना चाहता हूं - निम्नलिखित की तरह कुछ:PHP: शब्द परिभाषा स्क्रिप्ट?

मान लीजिए कि उपयोगकर्ता 5 शब्दों enetered करते हैं:

toast, egg, beans, coffee, tea 

अब मैं प्रदर्शित करना चाहते हैं उन्हें पसंद:

toast › slices of bread that have been toasted 
egg › animal reproductive body consisting of an ovum or embryotogether with nutritive and protective envelopes 
beans › a small skullcap <link to wikipedia>read more on wikipedia</link> 
coffee › a beverage consisting of an infusion of ground coffee beans 
tea › a beverage made by steeping tea leaves in water <link to wikipedia>read more on wikipedia</link> 

उन शब्दों जिसके लिए वहाँ विकिपीडिया पर कोई आलेख नहीं है के लिए, नहीं विकी लिंक प्रदर्शित किया जाएगा।

क्या कोई मुझे कृपया कुछ ओपन-सोर्स PHP स्क्रिप्ट या पैकेज सुझा सकता है जो मेरे लिए ऐसा करेगा? वैकल्पिक रूप से, मैं PHP में ऐसा करने के तरीके पर किसी भी सुझाव की सराहना करता हूं।

मुझे अपने डेटाबेस में शब्द परिभाषाओं को संग्रहीत करने के बजाय सीधे किसी अन्य वेबसाइट से डेटा प्राप्त करने में अधिक रुचि है।

मैं PHP और MySQL का उपयोग कर रहा हूं।

उत्तर

5

explode() फ़ंक्शन का उपयोग करके एक शब्द में उपयोगकर्ता का स्वच्छ इनपुट विस्फोट और उसके बाद का उपयोग Wikipedia API (api.php देखें) परिभाषाएँ पाने के लिए या विकी लिंक।
विकिपीडिया के अलावा अन्य वेब सेवाएं भी होनी चाहिए जो एपीआई एक्सेस प्रदान कर रही हैं, बस उन्हें Google। यदि आप इसे जावास्क्रिप्ट में बनाना चाहते हैं तो this एक अच्छी मार्गदर्शिका भी हो सकती है।

पूरी तरह से, एक अच्छी तरह से बनाई गई एपीआई भाषा-निर्भर नहीं है। आमतौर पर यह XML या JSON (API Data formats देखते हैं, धारावाहिक पीएचपी शामिल) है, एक्सएमएल मामले के लिए आप देशी पीएचपी SimpleXML (गाइड here) या SimplePie लाइब्रेरी का उपयोग कर सकते हैं। बस & पार्स प्राप्त करें!

+1

यह नेट के लिए ही उपलब्ध है, मैं PHP :( – Prashant

+0

के लिए इसकी आवश्यकता वर्तमान में केवल उस पृष्ठ पर सी # के लिए मदद, php के लिए नहीं। – Natrium

+5

लिंक अब सुधार किया जाए। क्योंकि गूगल है – sepehr

5

मैं सुझाव दूंगा कि आप Google परिभाषा के लिए चयनित शब्दों की परिभाषा का उपयोग करें। जब आप परिभाषित करते हैं: सेम, आपको Google से शब्द की परिभाषा सूची मिल जाएगी। यह Google खोज परिणाम विभिन्न स्रोतों से आते हैं, लेकिन पहला सबसे अधिक सही है।

आपको इस शब्द को खोजने के लिए Google खोज API का उपयोग करने की आवश्यकता है, XML को पार्स करें और उपयोगकर्ता को पहला परिणाम दिखाएं।

आप Google Search API Documentation

Google AJAX खोज API से हवाला देते हुए एक जावास्क्रिप्ट पुस्तकालय है कि आप की अनुमति देता है अपने वेब पृष्ठों में गूगल खोज एम्बेड है इस tutorial

से Google खोज API का उपयोग कर सकते और अन्य वेब अनुप्रयोगों। फ्लैश के लिए, और अन्य गैर-जावास्क्रिप्ट वातावरण, एपीआई एक कच्चे RESTful इंटरफ़ेस का खुलासा करता है जो JSON एन्कोडेड परिणाम देता है जो आसानी से अधिकतर भाषाओं और रनटाइम द्वारा संसाधित होते हैं।


उदाहरण: निर्धारित किए हैं: Google खोज API के लिए गाय वापस परिभाषाओं का एक बहुत लौट आते हैं। खोज परिणाम का पहला तत्व प्राप्त करें, इसे पार्स करें और इसे शब्द के बगल में दिखाएं।

+0

हाँ @Manish, इस अच्छा होगा लगभग सभी शब्दों की परिभाषाएं। मुझे इसे आज़माएं, अगर यह काम करता है तो आपको बताएगा .... – Prashant

+0

हां। यही कारण है कि Google का उपयोग करने के लिए कह रहा हूं। दूसरा, जब आपने किया, तो कृपया मुझे बताएं कि यह काम करता है या नहीं। Google एपीआई मैंने उपयोग किया है, खोज एक हमेशा छोड़ा गया था। –

+0

हाय @ मिशनी: मैंने कोशिश की लेकिन परिभाषित किया: 'परिभाषित' शब्द के साथ कंप्यूटर की क्वेरी काम नहीं कर रही है और कोई परिणाम नहीं लौटा रही है। मैंने इसे नमूना उदाहरणों में जांच लिया है। Http://www.google.com/uds/samples/apidocs/tabbed.html पर जाएं और 'परिभाषित करें: कंप्यूटर' ​​और वेब टैब पर क्लिक करें, यह कोई परिणाम नहीं दे रहा है। मुझे लगता है कि Google provi नहीं है अपनी खोज एपीआई – Prashant

संबंधित मुद्दे