php

php alpine docker Установка расширения pgsql (Postgres, Dockerfile)

Возможный вариант установки для pdo_pgsql:

FROM php:8.1-fpm-alpine3.14

RUN apk --no-cache update \
    && apk add --no-cache autoconf g++ make \
    postgresql-dev \
    \
    && docker-php-ext-configure pgsql -with-pgsql=/usr/local/pgsql \
    \
    && docker-php-ext-install pdo_pgsql

-т.е. тут:

  1. сначала ставится пакет postgresql-dev
  2. потом конфигурируется pgsql параметром -with-pgsql=/usr/local/pgsql
  3. и только затем устанавливается само расширение pdo_pgsql

php Вызов абстрактного метода - как обойти это ограничение

Можно использовать обычный метод (в данном случае статический):

public static function foo() {
        throw new RuntimeException("Надо реализовать!");
    }

-- и с помощью броска исключения в родителе заставлять реализовывать этот метод в потомках.
Этот подход является своебразной заменой абстрактному родительскому методу

PHP Установка и настройка в Ubuntu Linux. Инструкция для начинающих

Примечание: этот текст - часть курса по PHP

В этом разделе мы:

  1. Установим Apache
  2. Установим и настроем PHP на отображение ошибок
  3. Установим среду разработки NetBeans

1. Среда выполнения PHP

Сначала настроим среду выполнения PHP:

docker compose Пересобрать (перезапустить) только один сервис (контейнер)

Остановка и пересборка одного только сервиса web (напр. такого docker-compose):

docker-compose -f ./docker-compose.prod.yml stop web
docker-compose -f ./docker-compose.prod.yml  up  -d --build --force-recreate  web

-- в нашем случае указываем путь к файлу

Идея отсюла: https://blog.georgovassilis.com/2016/12/...

Ошибка Fatal error: Uncaught PDOException: SQLSTATE[HY000] [2002] No such file or directory in

Forums:

Fatal error: Uncaught PDOException: SQLSTATE[HY000] [2002] No such file or directory in

Возможное решение

Проблема была в том, что служба mysql просто не работала помог перезапуск

php composer autoload files Не работает автозагрузка

Для проверки, после запуска скрипта, в котором не получается загрузить файл целиком гляньте сгенерированный композером файл:

vendor/composer/autoload_files.php

-- там лежит то, что он грузил ориентируясь на composer.json

codeception Suite unit was not loaded Ошибка

Suite unit was not loaded

Решение: выполните команду bootstrap

php Обращение к статическим атрибутам из объекта

В php 8 работает:

<?php

class StatTest {
    public static $myprop = 1;
}


$test = new StatTest();
echo $test::$myprop;

ubuntu PHP FPM Установить модуль Apache FastCGI

Рассмотрим решение для разных версий ОС

Ubuntu 20

Такой командой:

sudo apt install libapache2-mod-fcgid

Ubuntu 16

Такой командой:

sudo apt install libapache2-mod-fastcgi

Pages

Subscribe to RSS - php