ESC Ofis | Bilgi Kütüphanesi

PDO Nedir?

PDO, PHP Veri Nesnelerinin kısaltmasıdır. PDO, veritabanlarına erişmek için yalın ve tutarlı bir yoldur. Bu, geliştiricilerin taşınabilir kodu daha kolay yazabileceği anlamına gelir. PDO, PearDB gibi bir soyutlama katmanı değildir. PDO, birleşik bir API (Uygulama Programlama Arayüzü) kullanan bir veri erişim katmanına benzer.

PDO nasıl etkinleştirilir

PDO'yu etkinleştirmek için --enable-pdo ve --with-pdo-sqlite --with-pdo-mysql veya PDO tarafından desteklenen herhangi bir veritabanını ( daha fazla bilgi için PHP el kitabına bakın) yapılandırın .

Windows kullanıcıları

  • Apache için php_pdo.dll ve php_pdo_mysql.dll dosyalarının php / ext dizininde bulunmasını, yorum bırakmamasını veya php.ini dosyasında uygun satırları eklemesini ve web sunucusunu yeniden başlatmasını sağlamanız gerekir.

    Windows altında PHP'nin daha yeni sürümlerini kullanırken PDO'yu etkinleştirmek, yani PHP sürüm 5.3 ve sonrası artık gerekmeyebilir. Bu, php_pdo.dll'yi belirtir. Bununla birlikte, php_pdo_mysql.dll dosyasını MySQL için veya hangisi kullandığınız veritabanında etkinleştirmeniz gerekir.

  • IIS için , PDO DLL'leri varsayılan olarak etkin değildir. Onları etkinleştirmek için tercih edilen yöntem Kontrol Paneline gitmektir | Program Ekle / Kaldır'a tıklayın, PHP kurulumunuzu vurgulayın ve "Değiştir" e tıklayın (Değiştir / Kaldır - XP). "FastCGI" belirtin, ardından bu ikisini de içerecek şekilde kurulu uzantıları değiştirin, ardından sunucunuzu yeniden başlatın.

Macintosh kullanıcıları

Yöntem 1

OS X 10.5 : Ayrıntılı, adım adım talimatlar şu adreste bulunabilir:

OS X 10.6 : OS 10.6, varsayılan olarak PDO uzantısı etkinleştirildiğinde gelir. (Geliştirme ortamınızı yapılandırma talimatları için, bkz. 
Drupal 6, OS X 10.6'da

Yöntem 2

MAMP , PDO uzantısıyla önceden yapılandırılmış olarak gelir. Daha fazla bilgi için bkz: Nasıl Yapılır: Yerel ortam MAMP kullanarak oluşturun .

Linux kullanıcıları

PDO çoğu linux sisteminde php 5.1.0'dan itibaren varsayılan olarak etkindir. PDO'yu bir mysql özel sürücüsü için etkinleştirmek için belgeler var .

Ubuntu

Çoğu Linux sisteminde olduğu gibi PDO desteği, PHP5'te tüm yeni Ubuntu dağıtımlarında ve kesinlikle Drupal 7 için gerekli olan PHP 5.2'de bulunur. PDO desteğinin etkin olmadığını görürseniz, aşağıdaki paketleri yükleyin ve sunucuyu yeniden başlatın.

sudo apt-get install php5-common php5-mysql
sudo /etc/init.d/apache2 reload

Sunucuyu yeniden başlatmadan önce , php.ini dosyasında veya /etc/php5/conf.d içindeki kendi .ini dosyalarında yüklü olduğundan ve yüklendiğinden emin olun .extension=pdo.soextension=pdo_mysql.so

CentOS

PDO desteğinin etkin olmadığını fark ederseniz, aşağıdakileri SSH aracılığıyla yapın

yum update php-mysql
Bash sana pdo-mysql'in kurulmadığını söylerse
yum install php-mysql

sonra httpd / apache'yi yeniden başlatın. Drupal yükleme komut dosyasını çalıştırmayı denediğinizde, MySQL veritabanınızı kurmanız gerekir

WHM aracılığıyla

  1. Yazılım'a Git> Kolay Apache> Kapsamdışı Seçenekler Listesi
  2. PDO ve PDO MYSQL'i seçin
  3. Kayıt etmek

Sorun giderme

Do PECL PDO yükleyiciyi kullanın. Proje korkunç eskidir ve terk edilmiştir. (Bkz.Http://pecl.php.net/package/PDO .) PECL PDO desteğinin etkinleştirildiği yerde vakalar bildirildi, ancak düzgün çalışmıyor. Bir belirti, Drupal 7'yi yükleyememesiydi.

PECL PDO'yu daha önce kurduysanız, onu kaldırıp sonra PHP çekirdeğinden yeniden yükleyin veya barındırma sağlayıcınızdan bunu yapmasını isteyin.

Debian ve Ubuntu'da, gerekli komutlar şunlardır:

sudo pecl uninstall pdo_mysql
sudo pecl uninstall pdo
sudo apt-get install --reinstall php5-common php5-mysql
sudo /etc/init.d/apache2 reload