Czy baza kodu WordPress używa mysqli lub PDO?
Wiem, że PDO jest lepszy od mysqli, ale mysqli też nie jest zły. Dodatkowo jedna z cech tego, co sprawia, że PDO jest lepsza od mysqli (czyli agnostyka bazy danych), nie znaczy wiele dla WordPressa, ponieważ WordPress zawsze będzie korzystał z serwera mysql. Ale wiązanie paramów z typami danych jest czymś, co PDO obsługuje, ale mysqli tego nie robi i to dobrze.
Moje odwagi mówią, że WordPress używa mysqli, ale nie widziałem go jeszcze w bazie kodu.
Moje drugie pytanie brzmi: czy WordPress używa mysqli, czy to z powodu problemów z prędkością, czy też z powodu wcześniejszych czasów (kiedy opracowywano WP), PDO jeszcze nie było?
mysql_connect
oficjalnie został zdeprecjonowany, wp wkrótce przeprowadzi się do PDO (wkrótce będzie to 1-2 lata). Ref: core.trac.wordpress.org/ticket/21663Aktualizacja do Wordpress 3.9+ - z PHP 5.5 przestarzałymi
mysql_*
funkcjami Wordpress zaczął używaćmysqli
jeśli jest dostępny na serwerze. Twoje przyszłe wtyczki i kod powinny wziąć to pod uwagę i przestać używaćmysql_*
. Obecnie, w wersji 3.9, wordpress sprawdza dostępnośćmysqli
i używa go, jeśli jest dostępny. Jeśli nie, skorzysta,mysql_*
ale ten czek zostanie usunięty w najbliższym możliwym terminie. Wydaje się, że w przyszłości będą korzystać,PDO
ale to większy projekt.Oto FAQ i ogłoszenie na ten temat:
http://make.wordpress.org/core/2014/04/07/mysql-in-wordpress-3-9/
źródło