Không có bản phát hành nào cho gói pecl php net oci8

Nếu bạn đã cài đặt OCI8 nhưng cần xây dựng lại thì bạn sẽ cần sử dụng tùy chọn -f để buộc xây dựng lại

sudo pecl cài đặt -f oci8

Sau khi bắt đầu, PECL hiển thị lời nhắc bên dưới để lấy vị trí của thư mục ORACLE_HOME (Máy khách tức thời) của bạn

Vui lòng cung cấp đường dẫn đến thư mục ORACLE_HOME. Sử dụng 'instantclient,/path/to/instant/client/lib' nếu bạn đang biên dịch với Oracle Instant Client [autodetect]

Trong trường hợp của tôi, câu trả lời thích hợp là

tức thời,/Thư viện/Oracle/instantclient_11_2

Một loạt kiểm tra tự động sẽ lướt qua màn hình thiết bị đầu cuối của bạn khi PECL kiểm tra môi trường và các điều kiện tiên quyết của bạn - sau đó thực hiện quá trình xây dựng. Trong trường hợp của tôi, một vài thông báo cảnh báo nhỏ đã hiển thị về các mục trong mã nguồn - nhưng những thông báo này có vẻ an toàn để bỏ qua và không can thiệp vào quá trình xây dựng

Cuối cùng, một thông báo thành công sẽ được hiển thị tương tự như bên dưới

Quá trình xây dựng đã hoàn tất thành công
 Đang cài đặt '/usr/lib/php/extensions/no-debug-non-zts-20121212/oci8. vì vậy'
 cài đặt được. kênh truyền hình. //pecl. php. mạng/oci8-2. 0. 8
 tùy chọn cấu hình "php_ini" không được đặt thành php. ini
 Bạn nên thêm "extension=oci8. vậy" sang php. ini

Phương pháp 2
Đây là biến thể thủ công hơn một chút của phương pháp 1. Tuy nhiên, nó có lợi thế là cho phép bạn chọn các phiên bản OCI8 cụ thể tùy thuộc vào tệp gói bạn tải xuống.

  • Gỡ gói, giải nén nó ở bất cứ đâu bạn muốn
  • mở thiết bị đầu cuối. Chuyển đến thư mục chứa gói giải nén và thực hiện bốn dòng lệnh bên dưới. Về cơ bản, chúng thực thi quy trình chạy như cài đặt do pecl quản lý trong phương pháp 1

phpize
. /configure --with-oci8=shared,instantclient,/path/to/instant/client/lib
 make
 sudo make install

Thay thế /path/to/instant/client/lib bằng đường dẫn đến thư mục ORACLE_HOME (Ứng dụng khách tức thời) của bạn theo Phương pháp 1 ở trên.

  • Xin lưu ý rằng các cảnh báo có thể được hiển thị khi thực hiện lệnh make (cũng xảy ra trong phương pháp 1), NHƯNG
  • quá trình xây dựng vẫn phải hoàn tất thành công

Bước 3. Cập nhật PHP. INI


Khi quá trình xây dựng hoàn tất, bạn cần cập nhật php của mình. ini để đảm bảo tiện ích mở rộng OCI8 mới được bao gồm trong các tùy chọn cấu hình của bạn. Nếu bạn đã sử dụng PHP thì có thể bạn đã có php. ini - nhưng nếu bạn không tích cực sử dụng/định cấu hình PHP trên máy Mac của mình thì đây có thể là lãnh thổ mới

Theo mặc định, OS X 10. 10 Yosemite lưu trữ các tệp cấu hình PHP của nó trong /etc (hoặc /private/etc). Nếu bạn vào thư mục này, bạn sẽ thấy một tệp cấu hình hiện có có tên là php. ban đầu. mặc định

Nếu bạn chưa có php tùy chỉnh của riêng mình. ini, tạo tệp này bằng cách sao chép phiên bản mặc định

sudo cp php. ban đầu. php mặc định. ban đầu

Bây giờ bạn có thể chỉnh sửa bản sao này để bao gồm cài đặt cấu hình tùy chỉnh của riêng bạn

  • Chuyển đến phần Tiện ích mở rộng động của php. tập tin ini
  • Điều này bắt đầu ở dòng 834 trong phiên bản tệp của tôi
thêm dòng

  • Đây là định dạng Unix (và Mac OS X) tiêu chuẩn để thêm phần mở rộng PHP
  • Lưu tệp đã cập nhật, sau đó thoát
Nó cũng có thể hữu ích để cập nhật các quyền trên php của bạn. tập tin ini. Trong bài viết thiết lập PHP của mình, Rob Allen (xem tài liệu tham khảo bên dưới) khuyên bạn nên áp dụng các thay đổi sau

sudo chmod ug+w php. ini
 sudo chgrp quản trị viên php. ini

Nếu bạn chưa định cấu hình PHP trên hệ thống của mình, hãy tham khảo tài liệu về PHP. net để sử dụng chức năng PHP đi kèm của OS X

Bước 4. Chỉnh sửa tổ chức Apache. apache. httpd. tập tin plist


Đây là bước còn thiếu trong hầu hết các tài liệu khác về cài đặt OCI8. Tôi không chắc về các chi tiết kỹ thuật - nhưng sau khi tìm kiếm và thử nghiệm trên Internet, tôi phát hiện ra rằng PHP cần phải nhận ra OCI8 trên hệ thống của tôi

tổ chức. apache. httpd. plist cần cập nhật để tham chiếu biến DYLD_LIBRARY_PATH. Giá trị phải được đặt thành đường dẫn của trang chủ Oracle Instant Client của bạn

  • Điều này cần phải được thêm vào phần của tập tin
  • Vì định dạng tệp là XML nên bạn cần tạo HAI mục nhập
  • Tên biến, DYLD_LIBRARY_PATH, phải được đặt giữa các thẻ
  • Giá trị biến phải được đặt giữa các thẻ
To edit the file, open a terminal window and enter the following commands:

cd /System/Library/LaunchDaemons
 sudo edit org. apache. httpd. plist

Thay đổi được minh họa trong hình bên dưới.
Lưu tệp đã cập nhật và thoát.

Không có bản phát hành nào cho gói pecl php net oci8

Khởi động lại Apache để thay đổi có hiệu lực

Bước 5. Xác minh cấu hình OCI8


Khi cấu hình của OCI8 hiện đã hoàn tất, bước cuối cùng là xác minh rằng nó hoạt động. Cách dễ nhất để làm điều này là mở terminal và thực hiện lệnh

Điều này sẽ hiển thị cài đặt cấu hình chung cho PHP, cũng như cài đặt cho từng mô-đun. Đầu ra phải bao gồm các chi tiết cho mô-đun OCI8 tương tự như mô-đun được hiển thị bên dưới

andrew$ php -i
 phpinfo()
 Phiên bản PHP => 5. 5. 14

 Hệ thống => Darwin Andrews-MacBook-Pro. địa phương 14. 1. 0 Hạt nhân Darwin Phiên bản 14. 1. 0. Thứ hai 22 tháng 12 23. 10. 38 PST 2014; . xnu-2782. 10. 72~2/RELEASE_X86_64 x86_64
 Ngày xây dựng => 9 tháng 9 năm 2014 19. 04. 27
.
.
 oci8

 Hỗ trợ OCI8 => đã bật
 Hỗ trợ OCI8 DTrace => đã tắt
 Phiên bản OCI8 => 2. 0. 8
 Bản sửa đổi => $Id. f04114d4d67cffea4cdc2ed3b7f0229c2caa5016 $
 Phiên bản thư viện ứng dụng khách thời gian chạy Oracle => 11. 2. 0. 4. 0
 Phiên bản ứng dụng khách tức thì thời gian biên dịch của Oracle => 11. 2

 Chỉ thị => Giá trị cục bộ => Giá trị chính
 oci8. connection_class => no value => no value
 oci8. default_prefetch => 100 => 100
 oci8. sự kiện => Tắt => Của
 oci8. max_persistent => -1 => -1
 oci8. old_oci_close_semantics => Tắt => Tắt
 oci8. persistent_timeout => -1 => -1
 oci8. ping_interval => 60 => 60
 oci8. đặc quyền_kết nối => Tắt => Tắt
 oci8. statement_cache_size => 20 => 20
.
.

Một tùy chọn tốt hơn là tạo một trang php trong thư mục tài liệu web apache của bạn gọi hàm phpinfo(). Khi được xem trong trình duyệt, phần này sẽ hiển thị cấu hình đầy đủ của bản cài đặt PHP của bạn (bao gồm cả mô-đun OCI8 nếu được định cấu hình đúng) ở định dạng dễ đọc hơn nhiều

 // Hiển thị tất cả thông tin, mặc định là INFO_ALL
 phpinfo();
 ?>

Đầu ra, được xem trong trình duyệt, sẽ trông giống như bên dưới

Không có bản phát hành nào cho gói pecl php net oci8

Nếu bạn có sẵn cơ sở dữ liệu Oracle, bạn có thể xác minh thêm việc cài đặt bằng cách sử dụng tập lệnh PHP đơn giản kết nối với cơ sở dữ liệu và gọi hàm sysdate của Oracle như bên dưới. Đảm bảo thay đổi thông tin đăng nhập cơ sở dữ liệu và các chi tiết kết nối khác để phù hợp với hệ thống của bạn

   //Tệp. dbtime. php
    $dbHost = "l92. 168. 0. 100";
    $dbHostPort="1521";
    $dbServiceName = "orcl";
    $usr = "hr" . $dbHost. ")(PORT=". $dbHostPort. "))
    $pswd = "hr";
    $dbConnStr = "(DESCRIPTION=(ADDRESS=(PROTOCOL=TCP)(HOST=".$dbHost.")(PORT=".$dbHostPort."))
     (CONNECT_DATA=(SERVICE_NAME=". $dbServiceName. ")))";
    if(. $dbConn = oci_connect($usr,$pswd,$dbConnStr)) {
       $err = oci_error();
       trigger_error('Không thể thiết lập kết nối. '. $err['message'], E_USER_ERROR);
    };
    $strSQL = "SELECT TO_CHAR(SYSDATE, 'HH. MI. SS') ctime TỪ DUAL";
    $stmt = oci_parse($dbConn,$strSQL);
    if (. oci_execute($stmt)) {
       $err = oci_error($stmt);
       trigger_error('Không thể thực hiện truy vấn. '. $err['message'], E_USER_ERROR);
    };
    oci_fetch($stmt);
    $rslt = oci_result
    print "

Thời điểm hiện tại là ". $rslt. "

";
?>

Không có bản phát hành nào cho gói pecl php net oci8


Tài liệu tham khảo

  • Rob Allen - Thiết lập PHP & MySQL trên OS X Yosemite. Mặc dù được nhắm mục tiêu vào một cơ sở dữ liệu khác và không bao gồm OCI8, bài viết này cung cấp một bản tóm tắt tốt về cấu hình PHP và Apache cần thiết.


chú thích cuối trang. Cài đặt lại các phiên bản mô-đun cũ hơn qua PECL


Trong ghi chú của tôi về việc cài đặt mô-đun OCI8, tôi đã nói rằng việc tải xuống thủ công từ pecl. php. net/package/oci8, sau đó gọi phpize và. /configure lệnh (xem Bước 2 ở trên), là cách duy nhất để cài đặt phiên bản cũ hơn nếu bạn cần

Tuy nhiên, sau đó tôi phát hiện ra rằng PECL cũng sẽ cho phép bạn làm điều này. Bạn chỉ cần thêm rõ ràng số phiên bản vào tên mô-đun. Ví dụ

Làm cách nào để bật OCI8 trong php?

Để cài đặt tiện ích mở rộng OCI8, chúng tôi cần cài đặt một số gói bổ sung trên máy chủ của mình. .
Chạy các lệnh này. cài đặt apt php-dev php-lê build-essential libaio1
Sau khi cài đặt, chúng ta cần lấy tệp OCI8. .
Chúng ta cần yêu cầu PHP tải tiện ích mở rộng OCI8. .
Làm mới máy chủ. .
Khởi động lại PHP-FPM

OCI8 PHP là gì?

Truy cập Cơ sở dữ liệu Oracle bằng phần mở rộng PHP OCI8 hoặc Trình điều khiển PDO_OCI. PHP OCI8 và PDO_OCI là một phần của dự án mã nguồn mở PHP. Chúng được duy trì bởi Oracle. Phần mở rộng PHP OCI8 là giao diện hàng đầu để làm việc với Cơ sở dữ liệu Oracle, mang lại các tính năng sẵn có và hiệu suất cao cho PHP .

Làm cách nào để cài đặt OCI8 trên Windows?

Cách cài đặt OCI8 trong windows .
Tải xuống OCI8 2. 1. 8 - 7. An toàn 2 luồng (TS) x86
Giải nén tệp vào xampp\ext
Thêm mã vào tệp xampp\php. phần mở rộng ini = php_oci8. dll
Tải xuống "Gói ứng dụng khách tức thì - Cơ bản" cho Windows từ trang Ứng dụng khách tức thì của OTN. .
Giải nén thư mục Instant Client vào C. \instantclient_12_2

Phần mở rộng OCI8 là gì?

Tiện ích mở rộng OCI8 cho phép bạn truy cập Cơ sở dữ liệu Oracle . Sử dụng 'pecl install oci8' để cài đặt cho PHP 8. 1. Sử dụng 'pecl cài đặt oci8-3. 0. 1' để cài đặt cho PHP 8. 0.