小编Car*_*cce的帖子

在PHP 7中输入属性的提示?

php 7是否支持类属性的类型提示?

我的意思是,不仅仅是针对建立者/吸气者,而是针对房产本身.

就像是:

class Foo {
    /**
     *
     * @var Bar
     */
    public $bar : Bar;
}

$fooInstance = new Foo();
$fooInstance->bar = new NotBar(); //Error
Run Code Online (Sandbox Code Playgroud)

php attributes variable-types type-hinting php-7

72
推荐指数
3
解决办法
4万
查看次数

为什么在laravel中创建一个外观而不是直接调用方法?

我只是从laravel开始,想要了解这一点......

让我们说我们的应用程序中有一个类:

namespace App\Tests;
class MyTest{

    public function sayHello($name){
        echo "Hello, $name!";
    }

    public static function anotherTest(){
        echo "another test...";
    }

}
Run Code Online (Sandbox Code Playgroud)

创建一个Facade和一个服务提供者而不仅仅是使用它有什么好处

use App\Tests\MyTest;

//... controller declarations here ....

public function someaction(){

    $mt = new MyTest();
    $mt->sayHello('John');

    //or
    MyTest::anotherTest();

}

//... etc...
Run Code Online (Sandbox Code Playgroud)

php dependency-injection laravel laravel-5 laravel-facade

6
推荐指数
1
解决办法
423
查看次数

发送到 packagist 时忽略测试文件夹

我有一个具有以下结构的项目:

- src
----/ /* Relevant files */
- tests
----/ /* Irrelevant files */
- composer.json
- phpunit.xml
Run Code Online (Sandbox Code Playgroud)

该项目已在每次提交时发送给 packagist。但是,它正在发送测试文件。

我想忽略tests文件夹,这样当有人打电话时,作曲家就不会下载不必要的文件composer require my/package

这是我的composer.json 的内容:

{
    "name": "my/package",
    "description": "...",
    "type": "library",
    "license": "MIT",
    "require": {
        "php": ">=7"
    },
    "require-dev": {
        "phpunit/phpunit": ">=5.4"
    },
    "autoload": {
        "psr-4": {
            "MyProject\\": "./src"
        }
    }
}
Run Code Online (Sandbox Code Playgroud)

php composer-php packagist

5
推荐指数
1
解决办法
2258
查看次数

如何读取 php 8 中的类方法属性?

假设我有以下属性声明

#[Attribute(Attribute::TARGET_METHOD | Attribute::IS_REPEATABLE)]
class Route
{   
    public function __construct(
        public string $path,
        public ?string $method = null,
        public ?string $alias = null
    )
    {}
}
Run Code Online (Sandbox Code Playgroud)

我在一些控制器方法中使用它,如下所示:

class Controller
{
    #[Route('/index/')]
    #[Route('/home/', alias: 'home')]
    public function index()
    {
        ...
    }
    
    #[Route('/create/', 'POST')]
    public function create(Request $request)
    {
        //...
    }
}
Run Code Online (Sandbox Code Playgroud)

我如何获取这些属性实例并读取它的属性?

php attributes php-8

5
推荐指数
1
解决办法
3801
查看次数

通过变量名访问静态对象属性

我知道可以使用变量作为名称来访问对象属性/方法

例:

$propName = 'something';
$something = $object->$propName;
Run Code Online (Sandbox Code Playgroud)

是否可以执行相同的w /常量或静态属性?

我试过了:

$ constName ='MY_CONST';

MyCLass::{$constName};
Run Code Online (Sandbox Code Playgroud)

$obj::{$constName};
Run Code Online (Sandbox Code Playgroud)

但似乎没有任何工作,我无法在任何地方找到它.

php variables object object-properties

4
推荐指数
1
解决办法
891
查看次数

如何在laravel 5.2中创建唯一约束?

如何使用laravel 5.2 Schema Builder创建唯一约束?

Schema::create('my_pivot', function(Blueprint $table){

    $table->increments('id');
    $table->integer('table1_id')->unsigned();
    $table->integer('table2_id')->unsigned();

    $table->foreign('table1_id')->references('id')->on('table1');
    $table->foreign('table2_id')->references('id')->on('table2');

    //Here i need to add an unique constraint to 'key1' + 'key2'

});
Run Code Online (Sandbox Code Playgroud)

php laravel laravel-5.2

4
推荐指数
1
解决办法
2184
查看次数

在PUT,PATCH,DELETE ...请求中使用php读取multipart/form-data的原始请求体

我正在从头开始编写一个安静的api库,现在我遇到了一个常见的问题:从请求中读取multipart/form-data中的原始数据.

对于POST请求,我知道我应该使用$_FILE/ $_POSTvariables.但是如果除了POST之外还有PUT,PATCH或其他任何请求类型呢?

  • 这种情况可能吗?
  • 如果是这样,我怎样才能读取原始内容,因为根据文档说明它不可用php://input

注意:我搜索了输入格式以及如何阅读它,我只想访问RAW数据.

php rest httprequest

4
推荐指数
1
解决办法
4640
查看次数

套接字权限 - android manifest

我制作了一个简单的测试应用程序,用于使用 java amqp lib ( implementation 'com.rabbitmq:amqp-client:5.7.1')读取 RabbitMQ 队列。

但是由于 Android 权限(套接字),我在连接到我的兔子服务器时遇到了问题

这是错误消息:

W/System.err: java.net.SocketException: socket failed: EPERM (Operation not allowed)

我已经尝试添加android.permission.INTERNET到清单中,但没有成功。这是它的样子:

<?xml version="1.0" encoding="utf-8"?>
<manifest xmlns:android="http://schemas.android.com/apk/res/android"
    package="com.example.androidwebsocket">

    <uses-permission android:name="android.permission.INTERNET" />

    <application
        android:allowBackup="true"
        android:icon="@mipmap/ic_launcher"
        android:label="@string/app_name"
        android:roundIcon="@mipmap/ic_launcher_round"
        android:supportsRtl="true"
        android:theme="@style/AppTheme">
        <activity android:name=".MainActivity">
            <intent-filter>
                <action android:name="android.intent.action.MAIN" />

                <category android:name="android.intent.category.LAUNCHER" />
            </intent-filter>
        </activity>
    </application>

</manifest>
Run Code Online (Sandbox Code Playgroud)

我错过了什么?

编辑

根据要求,这里是完整的错误堆栈跟踪:https : //pastebin.com/WAh2B4rP

以及触发此错误的代码:

ConnectionFactory factory = new ConnectionFactory();
factory.setUsername("myuser");
factory.setPassword("mypass");
factory.setVirtualHost("/");
factory.setHost("myhost.io");
factory.setPort(5672);

connection = factory.newConnection(); //Error triggers here
channel = connection.createChannel();
Run Code Online (Sandbox Code Playgroud)

java sockets connection android rabbitmq

4
推荐指数
1
解决办法
4217
查看次数