2010-03-19 70 views
17

Chúng tôi có một ứng dụng web PHP chạy trên máy của khách hàng. Đối với một bản cập nhật, chúng tôi có một chút mã trong C mà chúng tôi muốn bao gồm như một thư viện bản địa mờ cùng với các ứng dụng web PHP.Gọi chức năng thư viện C/C++ từ PHP

Làm cách nào để gọi điện đến một C/C++ lib. chức năng từ PHP? Không thể giả định rằng ứng dụng PHP, được gọi bởi máy chủ web, có bất kỳ loại quyền nào để gọi một hàm exec(), eval() hoặc system() của hàm để thực thi trình điều khiển trình bao bọc C trong đó lần lượt sử dụng thư viện C/C++, vì vậy nó sẽ cần phải là một thư viện C trực tiếp sử dụng từ bên trong mã PHP.

Trả lời

7

Câu trả lời của St. John Johnson là đúng. Nhưng bây giờ bạn cũng có thể sử dụng thư viện php-cpp. Nó cung cấp một cầu nối dễ dàng hơn nhiều giữa PHP và C++. Xem http://www.php-cpp.com để biết thêm thông tin.

+10

Xin chào! Bạn phải tiết lộ rằng đây là thư viện _your_. http://meta.stackexchange.com/a/59302/155739 Vui lòng đọc kỹ FAQ của trang web. –

1

Bạn có thể biên dịch mã và sử dụng các hàm hệ thống, shell_exec hoặc passthru để xử lý đầu ra. Hầu hết các máy chủ web cho phép bạn biên dịch mã C++, chỉ cần ssh đến máy chủ của bạn, tải lên mã và biên dịch nó.

1

Một lựa chọn khác là phải có mã C như một daemon, luôn luôn chạy, và kịch bản php kết nối với nó Xuyên socket miền unix hoặc một số thư viện hiện có để trao đổi dữ liệu.

Thông tin khác here

Các vấn đề liên quan