वर्डप्रेस mysqli और PDO


11

क्या वर्डप्रेस कोड आधार mysqli या PDO का उपयोग करता है?

मुझे पता है कि पीडीओ मायसकली से बेहतर है, लेकिन मायसिकली न तो खराब है और न ही। इसके अलावा जो पीडीओ mysqli से बेहतर है उसमें से एक फीचर से (जो कि डेटाबेस एग्नोस्टिक है) वर्डप्रेस के लिए ज्यादा मायने नहीं रखता है क्योंकि वर्डप्रेस हमेशा mysql सर्वर का उपयोग करेगा। लेकिन डेटा प्रकारों के साथ बाइंडिंग पार्म्स कुछ ऐसा है जो पीडीओ सपोर्ट करता है, लेकिन मायसिकली ऐसा नहीं करता है और यह एक अच्छी बात है।

मेरी हिम्मत बताती है कि वर्डप्रेस mysqli का उपयोग करता है लेकिन मैं इसे अभी तक कोड बेस में नहीं देख सकता था।

मेरा दूसरा सवाल यह है कि वर्डप्रेस mysqli का उपयोग कर रहा है, क्या यह गति चिंताओं के कारण है या यह इसलिए है क्योंकि पहले के दिनों में वापस (जब WP विकसित किया जा रहा था), पीडीओ अभी तक नहीं था?

जवाबों:


7

वर्डप्रेस mysql_*कार्यों का उपयोग करता है

http://core.trac.wordpress.org/browser/tags/3.5.1/wp-includes/wp-db.php

यह उन लोगों का उपयोग करता है जब से मैं याद कर सकता हूं, जो शायद आपके आखिरी सवाल का जवाब देता है। यह वह है जो मैं विरासत कोड पर विचार करूंगा। मुझे संदेह है कि इसे जल्द ही अपडेट किया जाएगा (उन कार्यों को केवल PHP 5.5 के रूप में चित्रित किया गया था, मुझे विश्वास है)। मुझे नहीं पता कि विकास किस मार्ग पर जाएगा।

ट्राई में टिकट का लिंक, व्येक के सौजन्य से (नीचे एक टिप्पणी से):

http://core.trac.wordpress.org/ticket/21663


मैंने wp-db.php पर कोड चेक किया। 1133 की लाइन पर, इसे db_connect फ़ंक्शन मिला है और इसके अनुसार, यह mysqli भी नहीं है। मैं उलझन में हूं। लाइन 1143 में स्पष्ट रूप से यह है; $ यह-> dbh = @mysql_connect ($ this-> dbhost, $ this-> dbuser, $ this-> dbpassword, $ new_link, $ client_flags); और PHP मैनुअल के अनुसार, ( php.net/manual/en/function.mysql-connect.php ), यह एक mysql कोड है, न कि mysqli। क्या WP वास्तव में mysql का उपयोग करता है?
औसत जो

6
Wordpress पुराने कार्यों का उपयोग करता है, चूंकि mysql_connectआधिकारिक तौर पर मूल्यह्रास किया गया है, wp जल्द ही पीडीओ के लिए उम्मीद कर रहा है (जल्द ही 1-2 साल है)। रेफरी: core.trac.wordpress.org/ticket/21663
Wyck

@ApretJoe ... हां, जैसा मैंने कहा, वर्डप्रेस mysql फ़ंक्शन का उपयोग करता है। व्याक की तरह, मैं पीडीओ के लिए उम्मीद कर रहा हूं, लेकिन मुझे नहीं पता कि यह किस रास्ते पर जाएगा।
s_ha_dum

Trac लिंक व्याक के लिए धन्यवाद। s_ha_dum कृपया अपने उत्तर में इस लिंक ( core.trac.wordpress.org/ticket/21663 ) को शामिल करें और व्याकरण को सही करें जहां आप जाते हैं "यदि आपने कभी मौका दिया है, तो जब भी आपको मौका मिलता है,"। धन्यवाद
औसत जो

थोड़ा टकराया। यह एक प्रकाश वर्ष पहले लिखा गया था .. लेकिन आज मुझे विश्वास है कि हमारे पास कुछ संस्करणों के बाद से वर्डप्रेस में mysqli_ * है, है ना?
। कालियन लिंडबर्ग

11

वर्डप्रेस 3.9+ के लिए एक अद्यतन - PHP 5.5 के साथ mysql_*फ़ंक्शन को चित्रित करते हुए वर्डप्रेस ने mysqliसर्वर पर उपलब्ध होने पर उपयोग करना शुरू कर दिया है। आपके भविष्य के प्लगइन्स और कोड को इसे ध्यान में रखना चाहिए और उपयोग करना बंद कर देना चाहिए mysql_*। अभी, 3.9 में, उपलब्धता के लिए वर्डप्रेस जाँच करता है mysqliऔर यदि उपलब्ध हो तो इसका उपयोग करता है। यदि यह उपयोग नहीं करता है, mysql_*लेकिन उस चेक को जल्द से जल्द संभव सुविधा से हटा दिया जाएगा। सड़क के नीचे ऐसा लगता है कि वे उपयोग कर रहे होंगे, PDOलेकिन यह एक बड़ी परियोजना है।

यहां एक FAQ और घोषणा है:

http://make.wordpress.org/core/2014/04/07/mysql-in-wordpress-3-9/

हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.