Невозможно поместить переменную php в php array [duplicate]

Хотя в настоящее время в стандартном CSS нет родительского селектора, я работаю над (личным) проектом с именем ax (т. е. расширенный синтаксис селектора CSS / ACSSSS ), который среди семи новых селекторов , включает в себя:

  1. селектор непосредственного родителя < (который позволяет сделать противоположный выбор >)
  2. a любой предка селектор ^ (который позволяет сделать противоположный выбор [SPACE])

ax в настоящее время на относительно ранней стадии разработки BETA.

См. Демонстрацию здесь:

http://rounin.co.uk/projects/axe/axe2.html

(сравните два списка на в левом стиле со стандартными селекторами и двумя списками справа в стиле с селекторами топора)

10
задан Aaron 27 November 2016 в 11:24
поделиться

3 ответа

Как описано здесь

Переменные элемента класса называются «свойствами». Вы также можете увидеть, как они ссылаются на другие термины, такие как «атрибуты» или «поля», но для целей этой ссылки мы будем использовать «свойства». Они определяются с использованием одного из ключевых слов public, protected или private, за которым следует объявление нормальной переменной. Это объявление может включать инициализацию, но эта инициализация должна быть постоянным значением, то есть она должна быть способна быть оценена во время компиляции и не должна зависеть от информации о времени выполнения для оценки.

Единственный способ сделать эту работу: -

<?php

namespace App;

class Amazon
{
  protected $serviceURL;

  public function __construct()
  {
    $this->serviceURL = config('api.amazon.service_url');
  }
}
23
ответ дан prateekkathal 18 August 2018 в 21:28
поделиться

Другая рабочая альтернатива, которую я использовал, - с boot( ) с Laravel Eloquent:

<?php

namespace App;

class Amazon {
    protected $serviceURL;

    protected static function boot()
    {
        parent::boot();

        static::creating(function ($model){
            $model->serviceURL = config('api.amazon.service_url');
        });
    } }
0
ответ дан 4givN 18 August 2018 в 21:28
поделиться

Инициализация свойств класса не допускается таким образом. Вы должны переместить инициализацию в конструктор.

0
ответ дан Curos 18 August 2018 в 21:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: