![]() Server : Apache System : Linux server2.corals.io 4.18.0-348.2.1.el8_5.x86_64 #1 SMP Mon Nov 15 09:17:08 EST 2021 x86_64 User : corals ( 1002) PHP Version : 7.4.33 Disable Function : exec,passthru,shell_exec,system Directory : /home/corals/old/vendor/php-amqplib/php-amqplib/PhpAmqpLib/Wire/ |
<?php namespace PhpAmqpLib\Wire; use PhpAmqpLib\Exception; class AMQPTable extends AMQPAbstractCollection { /** * @return int */ final public function getType() { return self::T_TABLE; } /** * @param string $key * @param mixed $val * @param int|null $type */ public function set($key, $val, $type = null) { //https://www.rabbitmq.com/resources/specs/amqp0-9-1.pdf, https://www.rabbitmq.com/resources/specs/amqp0-8.pdf //Field names MUST start with a letter, '$' or '#' and may continue with letters, '$' or '#', digits, // or underlines, to a maximum length of 128 characters //The server SHOULD validate field names and upon receiving an invalid field name, it SHOULD signal a connection // exception with reply code 503 (syntax error) //validating length only and delegating other stuff to server, as rabbit seems to currently support numeric keys if (!($len = strlen($key)) || ($len > 128)) { throw new Exception\AMQPInvalidArgumentException( 'Table key must be non-empty string up to 128 chars in length' ); } $this->setValue($val, $type, $key); } }