php

symfony Кеширование - как сделать

Простой пример кеширования запроса к API с помощью кеш-контракта (см метод getClients()):

wordpress Ссылка, по которой вы перешли, устарела. Пожалуйста, попробуйте ещё раз При загрузке файла

Ссылка, по которой вы перешли, устарела.

Пожалуйста, попробуйте ещё раз.

Если подобное сообщение возникает при отправке файла, то возможно дело просто в ограничении сервера на размер post-запроса:

Got error 'PHP message: PHP Warning: POST Content-Length of .... bytes exceeds the limit of .... bytes

Решение

Выставляем нужные размеры post запроса и загружаемых файлов в php.ini .

php Broken pipe: [client.....] AH01075: Error dispatching request to : ...Ошибка решение

(32)Broken pipe: [client 127.0.0.1:49176] AH01075: Error dispatching request to : (passing brigade to output filters),

-- на локальной машине от этого может помочь перезагрузка fpm + пишут, что редомендуется посмотреть лог самого fpm, так как подобная ошибка может быть вызвана, если ведется запрос к какому-то недоступному сетевому адресу.

Также причина может быть связана с тем, что серверу выделяется недостаточно потоков для обработки запросов (и/или идет ddos атака, или что-то перегружающее сервер).

wordpress trying to get property of non-object in wp-includes/post.php Ошибка при загрузке файла

trying to get property of non-object in wp-includes/post.php

Причина

Причина была в некорректном состоянии базы данных (не до конца развернулся дамп из-за ошибки ERROR 1062 (23000) at line....: Duplicate entry '0' for key 'PRIMARY').
Решение: дамп базы был загружен заново.

Выяснение деталей

Чтобы уточнить происходящее можно временно модифицировать код файла:

wordpress Получить все посты (записи) для данного элемента таксономии (term)

По сути как и обычный запрос, но нужно использовать дополнительный элемент tax_query, который также принимает вложенный массив параметров:

$args = array(
'post_type' => 'recipe_cpt',
'tax_query' => array(
    array(
    'taxonomy' => 'recipe_tx',
    'field' => 'term_id',
    'terms' => 37
     )
  )
);
$query = new WP_Query( $args ); 

Например:

php Как понять где именно в строке ошибка (в каком символе, когда номер строки известен)

Если в строке находится достаточно сложное выражение, то можно всегда разбить его на несколько строк, чтобы уточнить у интерпретатора что именно не так.

Пример разбиения одной строки на несколько

Рассмотрим пример:

<?php

$s = [];
$a = $s;
$s[1] = '123' . $a;

- для этого кода мы получим сообщение:

Notice: Array to string conversion in [...][...] on line 5

- написано, что происходит некорректная попытка привести массив к строковому типу в 5-ой строке программы, но на первый взгляд на строку:

php var_dump И print_r Какая разница и что есть общее между этими функциями

Просто цитируем официальный сайт PHP:

  • var_dump() -- Выводит информацию о переменной.
  • print_r() -- Выводит удобочитаемую информацию о переменной.

Так в чем же разница

Считается что формат print_r более удобный для чтения (на практике потому, что там содержится меньше информации, например, не выводится тип переменных).

php Передача значений по ссылке в функцию - плюсы и минусы, когда это стоит делать, а когда нет

Передача значений по ссылке в функцию (или метод класса) позволяет сохранить результат работы с переменной в функции для внешнего кода без возврата значения этой переменной из функции.

Изменение нескольких переменных в функции с помощью передачи по ссылке

Если некоторые переменные (все или часть) будут переданы в функцию по ссылке, тогда после вызова функции их значения будут изменены и снаружи.

php Возврат изменение нескольких значений в функции/методе, массив объект - что лучше отдавать наружу

Что лучше - одно значение или много значений

Если ваши значения никак логически друг с другом не связаны, то старайтесь для рассчета каждого параметра использовать отдельную функцию (или метод класса), подобных подход приводит к большей универсальности, т.к. рассчитывается только, что нужно, без лишних действий.
Если же логика вашей программы обязательно требует возврата "набора" значений, то читайте дальше ;)

php Точечная нотация - путь в многомерном массиве

Идея обозначения пути как строки со словами, разделенными точкой, проста. Рассмотрим пример:
Пусть у нас есть есть строка путь

'name.job.id'

, такой путь можно использовать как парамерт, который требует извлечь из массива, скажем, $arr элемент:

$arr['name'['job']['id']

Pages

Subscribe to RSS - php