Hướng dẫn php sysvmsg extension - phần mở rộng php sysvmsg

Tôi sử dụng trong một dự án cá nhân của mình, hàng đợi đơn giản được thực hiện bởi hàm MSG. Đây là một hàm cụ thể MSG_RECEIVE được sử dụng để chờ một thông báo đến hàng đợi. Thỉnh thoảng, sự chờ đợi này gặp sự cố với mã lỗi trả về 43 mà không có văn bản lỗi.error code 43 without an error text.

Tôi có thể gây ra lỗi số 43. Nếu tôi chạy hai quy trình, bạn có thể thấy trên GitHub. Điều này được mong đợi, nhưng nếu tôi điều hành bởi người giám sát, tôi sẽ gặp lỗi tương tự.43. If I run two processes, you can see on github. This is expected, but if i run by supervisor i get same error.

Tôi đã tạo tập lệnh đơn giản trên GitHub, được thực hiện bởi người giám sát và xử lý chờ nhận thông báo nhận, đôi khi nó xảy ra mã lỗi trả về chức năng 43. Có điều gì tài nguyên sạch không?

Tôi không biết điều gì gây ra điều này, nhưng tôi đã thử gì?

Tôi đã kiểm tra xem người giám sát chỉ chạy một quy trình PHP và PID vẫn giống nhau. Tôi đã thử nó trên cánh tay Raspbian 32 bit (Php 7.3.19) và Ubuntu 64 bit (Php 7.4.9), cả hai đều giống nhau.

Cám ơn bạn vì đã giúp.

Tôi hy vọng hành vi được mô tả tốt.

Tôi đang chạy Laravel 5.4 trên máy chủ Ubuntu 16.04 với PHP7. Cố gắng cài đặt gói cviebrock/eloquent-sluggable ném một số lỗi:

[email protected]:/home/sherk/ftp/www$ sudo composer require cviebrock/eloquent-sluggable
Do not run Composer as root/super user! See https://getcomposer.org/root for details
Using version ^4.2 for cviebrock/eloquent-sluggable
./composer.json has been updated
Loading composer repositories with package information
Updating dependencies (including require-dev)
Your requirements could not be resolved to an installable set of packages.

  Problem 1
    - phpunit/php-code-coverage 4.0.7 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - phpunit/php-code-coverage 4.0.7 requires ext-dom * -> the requested PHP extension dom is missing from your system.
    - Installation request for phpunit/php-code-coverage (installed at 4.0.7) -> satisfiable by phpunit/php-code-coverage[4.0.7].

  To enable extensions, verify that they are enabled in those .ini files:
    - /etc/php/7.0/cli/php.ini
    - /etc/php/7.0/cli/conf.d/10-mysqlnd.ini
    - /etc/php/7.0/cli/conf.d/10-opcache.ini
    - /etc/php/7.0/cli/conf.d/10-pdo.ini
    - /etc/php/7.0/cli/conf.d/20-calendar.ini
    - /etc/php/7.0/cli/conf.d/20-ctype.ini
    - /etc/php/7.0/cli/conf.d/20-exif.ini
    - /etc/php/7.0/cli/conf.d/20-fileinfo.ini
    - /etc/php/7.0/cli/conf.d/20-ftp.ini
    - /etc/php/7.0/cli/conf.d/20-gd.ini
    - /etc/php/7.0/cli/conf.d/20-gettext.ini
    - /etc/php/7.0/cli/conf.d/20-iconv.ini
    - /etc/php/7.0/cli/conf.d/20-json.ini
    - /etc/php/7.0/cli/conf.d/20-mbstring.ini
    - /etc/php/7.0/cli/conf.d/20-mcrypt.ini
    - /etc/php/7.0/cli/conf.d/20-mysqli.ini
    - /etc/php/7.0/cli/conf.d/20-pdo_mysql.ini
    - /etc/php/7.0/cli/conf.d/20-phar.ini
    - /etc/php/7.0/cli/conf.d/20-posix.ini
    - /etc/php/7.0/cli/conf.d/20-readline.ini
    - /etc/php/7.0/cli/conf.d/20-shmop.ini
    - /etc/php/7.0/cli/conf.d/20-sockets.ini
    - /etc/php/7.0/cli/conf.d/20-sysvmsg.ini
    - /etc/php/7.0/cli/conf.d/20-sysvsem.ini
    - /etc/php/7.0/cli/conf.d/20-sysvshm.ini
    - /etc/php/7.0/cli/conf.d/20-tokenizer.ini
  You can also run `php --ini` inside terminal to see which files are used by PHP in CLI mode.

Installation failed, reverting ./composer.json to its original content.

Tôi không có vấn đề gì khi cài đặt gói này trên phiên bản cục bộ của ứng dụng.

Hỏi ngày 14 tháng 4 năm 2017 lúc 9:11Apr 14, 2017 at 9:11

1

Trước hết, đọc cảnh báo! Nó nói không chạy nhà soạn nhạc như root! Thứ hai, có lẽ bạn đang sử dụng XAMMP trên cục bộ của mình có các thư viện PHP cần thiết là mặc định.not run composer as root! Secondly, you're probably using Xammp on your local which has the required php libraries as default.

Nhưng trong máy chủ của bạn, bạn đang thiếu

sudo apt-get update
sudo apt install php-xml
0.
sudo apt-get update
sudo apt install php-xml
1 có tất cả các gói liên quan bạn cần. Vì vậy, bạn có thể chỉ cần cài đặt nó bằng cách chạy:

sudo apt-get update
sudo apt install php-xml

Nhiều khả năng bạn cũng đang thiếu

sudo apt-get update
sudo apt install php-xml
2. Nếu bạn gặp lỗi, hãy cài đặt gói này với:

sudo apt-get install php-mbstring

Sau đó chạy:

composer update
composer require cviebrock/eloquent-sluggable

Đã trả lời ngày 14 tháng 4 năm 2017 lúc 9:15Apr 14, 2017 at 9:15

Anar Bayramovanar BayramovAnar Bayramov

105K5 Huy hiệu vàng41 Huy hiệu bạc63 Huy hiệu Đồng5 gold badges41 silver badges63 bronze badges

11

sudo apt-get update
sudo apt install php-xml
3 sẽ hoạt động nhưng điều này sẽ tải xuống plugin cho phiên bản PHP mới nhất.

Nếu phiên bản PHP của bạn không phải là phiên bản mới nhất, thì bạn có thể thêm phiên bản trong đó:

# PHP 7.1
sudo apt install php7.1-xml

# PHP 7.2:
sudo apt install php7.2-xml

# PHP 7.3
sudo apt install php7.3-xml


# PHP 7.4
sudo apt install php7.4-xml

# PHP 8
sudo apt install php-xml

Đã trả lời ngày 10 tháng 6 năm 2020 lúc 19:29Jun 10, 2020 at 19:29

Player1Player1Player1

2.53023 Huy hiệu bạc36 Huy hiệu đồng23 silver badges36 bronze badges

3

Cho Centos, Rhel, Fedora:

$ yum search php-xml
============================================================================================================ N/S matched: php-xml ============================================================================================================
php-xml.x86_64 : A module for PHP applications which use XML
php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php-xmlseclibs.noarch : PHP library for XML Security
php54-php-xml.x86_64 : A module for PHP applications which use XML
php54-php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php55-php-xml.x86_64 : A module for PHP applications which use XML
php55-php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php56-php-xml.x86_64 : A module for PHP applications which use XML
php56-php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php70-php-xml.x86_64 : A module for PHP applications which use XML
php70-php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php71-php-xml.x86_64 : A module for PHP applications which use XML
php71-php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php72-php-xml.x86_64 : A module for PHP applications which use XML
php72-php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol
php73-php-xml.x86_64 : A module for PHP applications which use XML
php73-php-xmlrpc.x86_64 : A module for PHP applications which use the XML-RPC protocol

Sau đó chọn phiên bản PHP-XML khớp với phiên bản PHP của bạn:php-xml version matching your php version:

# php -v
PHP 7.2.11 (cli) (built: Oct 10 2018 10:00:29) ( NTS )
Copyright (c) 1997-2018 The PHP Group
Zend Engine v3.2.0, Copyright (c) 1998-2018 Zend Technologies

# sudo yum install -y php72-php-xml.x86_64

Đã trả lời ngày 23 tháng 10 năm 2018 lúc 7:01Oct 23, 2018 at 7:01

Shoaib Khanshoaib KhanShoaib Khan

87312 Huy hiệu bạc25 Huy hiệu Đồng12 silver badges25 bronze badges

Bạn chỉ cần cập nhật tệp trình soạn thảo cục bộ của mình:

  • Đầu tiên bạn cần xóa tệp "Composer.lock" khỏi ứng dụng của bạn

  • Sau đó, thực thi trong bash của bạn:

composer update --ignore-platform-req=ext-curl
  • Vì vậy, hãy thử lại
composer require cviebrock/eloquent-sluggable

Đã trả lời ngày 17 tháng 7 lúc 16:26Jul 17 at 16:26

Làm cách nào để cài đặt hoặc bật tiện ích mở rộng DOM của PHP?

Nếu phiên bản PHP của bạn không phải là phiên bản mới nhất, thì bạn có thể thêm phiên bản trong đó: # Php 7.1 sudo apt Cài đặt PHP7 ...

1-XML # Php 7.2: Sudo APT Cài đặt Php7 ..

2-XML # Php 7.3 sudo apt Cài đặt Php7 ..

3-XML # Php 7.4 sudo apt Cài đặt Php7 ..

4-XML # Php 8 sudo apt Cài đặt PHP-XML ..

Làm cách nào để kích hoạt phần mở rộng PHP?

Để cho phép mở rộng PHP Intl, hãy làm theo các bước ....

Mở XAMPP/PHP/PHP. Tệp INI trong bất kỳ trình soạn thảo nào ..

Tìm kiếm "; phần mở rộng = php_intl.dll".

Vui lòng loại bỏ dấu chấm phẩy bắt đầu (;) như:; extension = php_intl.dll. đến. tiện ích mở rộng = php_intl.dll ..

Lưu XAMPP/PHP/PHP. Tệp Ini ..

Khởi động lại xampp/wamp của bạn ..

Tiện ích mở rộng DOM là gì?

Tiện ích mở rộng DOM cho phép bạn hoạt động trên các tài liệu XML thông qua API DOM với PHP. Lưu ý: Phần mở rộng DOM sử dụng mã hóa UTF-8. Sử dụng mb_convert_encoding (), uconverter :: transcode () hoặc iconv () để xử lý các mã hóa khác.allows you to operate on XML documents through the DOM API with PHP. Note: The DOM extension uses UTF-8 encoding. Use mb_convert_encoding(), UConverter::transcode(), or iconv() to handle other encodings.

Làm cách nào để cài đặt các tiện ích mở rộng PHP?

Cách biên dịch và cài đặt các tiện ích mở rộng PHP từ nguồn..

Cài đặt gói phát triển PHP. Trên Ubuntu/Debian, bạn có thể sử dụng apt-get, đó là một miếng bánh. ....

Tải xuống & giải nén mã nguồn PHP5. ....

Chuẩn bị phần mở rộng (PHPize) ....

Định cấu hình & thực hiện tiện ích mở rộng. ....

Di chuyển phần mở rộng. ....

Chỉnh sửa PHP của bạn. ....

Khởi động lại PHP của bạn ..