Size: a a a

2020 July 19

️V

️️️️️️️️️️Владимир V... in phpGeeks
🇺🇦 Ad Libitum
Туплю. Вот у меня в цикле заполняется массив.
for ($i = 0; $i < \count($array['block_images']['image']); $i++) {
   $foo[] = [
       'image' => $array['block_images']['image'][$i],
       'title' => $array['block_images']['title'][$i],
    'order' => $array['block_images']['order'][$i]
   ];

Если order => '' то получаем ошибку. Как проверить на '' и подставить значение?
так у тебя order вообще массив, а не строка. используй array_key_exists
источник

🇺L

🇺🇦 Ad Libitum in phpGeeks
Спасибо
источник

🇺L

🇺🇦 Ad Libitum in phpGeeks
Все равно не выходит.
источник

🇺L

🇺🇦 Ad Libitum in phpGeeks
https://pastebin.com/Y0QAbVdy - у меня получается что у [order][] не хватает одного ключа. Как проверить такую ситуацию и добавить туда свой - непонятно
источник

🇺L

🇺🇦 Ad Libitum in phpGeeks
Пробую сделать так:
$search_array = $_POST;

for ($i = 0; $i < \count($search_array['block_images']); $i++)
{
if(isset($search_array['block_images']['order'][$i]))
{
 $search_array['block_images']['order'][$i] . "<br>";
}else{
 $search_array['block_images']['order'][$i] = "666";
}
}
print_r($search_array['block_images']);

По логике - при отсутствующем значении 'order' в $search_array['block_images']['order'][$i] должно писаться 666, а на деле этого не происходит.
источник

V

Victooor in phpGeeks
🇺🇦 Ad Libitum
Если у меня неожиданно в массиве есть order => '' то каким образом мне туда можно впихнуть '666' к примеру?
Ловите диавола!
источник

KP

Kolya Pot in phpGeeks
🇺🇦 Ad Libitum
Пробую сделать так:
$search_array = $_POST;

for ($i = 0; $i < \count($search_array['block_images']); $i++)
{
if(isset($search_array['block_images']['order'][$i]))
{
 $search_array['block_images']['order'][$i] . "<br>";
}else{
 $search_array['block_images']['order'][$i] = "666";
}
}
print_r($search_array['block_images']);

По логике - при отсутствующем значении 'order' в $search_array['block_images']['order'][$i] должно писаться 666, а на деле этого не происходит.
У тебя в $search_array['block_images']['order'][$i] пустая строка а она при isset выдаст true и в ветку с 666 не попадёт
источник

АD

Алексей Dominus... in phpGeeks
for ($i = 0; $i = < \count($search_array['block_images']); $i++) {
//...

if(isset($search_array['block_images']['order'][$i]) && !empty($search_array['block_images']['order'][$i])) {
//...
источник

VK

Vladimir Kuzmin in phpGeeks
Алексей Dominus
for ($i = 0; $i = < \count($search_array['block_images']); $i++) {
//...

if(isset($search_array['block_images']['order'][$i]) && !empty($search_array['block_images']['order'][$i])) {
//...
Тогда уж проще только empty проверять
isset излишен
источник

АD

Алексей Dominus... in phpGeeks
php notice может быть. если переменная не существует
источник

VK

Vladimir Kuzmin in phpGeeks
Алексей Dominus
php notice может быть. если переменная не существует
Не должно быть
По факту, empty это конструкция вида
!isset($var) || $var == false
источник

АD

Алексей Dominus... in phpGeeks
Vladimir Kuzmin
Не должно быть
По факту, empty это конструкция вида
!isset($var) || $var == false
согласен)
источник

АХ

Александр Хакимов... in phpGeeks
Здоров посоны
источник

АХ

Александр Хакимов... in phpGeeks
Подскажите кто нибудь видео уроки , по конфигурированию Nginx Apache или туториал типа как стать девопсом за 21 день
источник

VR

Vadim Ryabov 🔥 in phpGeeks
Александр Хакимов
Подскажите кто нибудь видео уроки , по конфигурированию Nginx Apache или туториал типа как стать девопсом за 21 день
А ты думаешь devops только nginx настраивает?
источник

АХ

Александр Хакимов... in phpGeeks
Vadim Ryabov 🔥
А ты думаешь devops только nginx настраивает?
Я в целом направление видео уроков ищу такое, надо заменторить чувака, а времени на него особо нет.
источник

СП

Сергей Предводителев... in phpGeeks
Добрый день!

Есть у меня класс-хелпер, который кочует из проекта в проект и постепенно допиливается. Суть хелпера — функции, которые позволяют удостоверится, что переменная нужного типа и если нет, то привести к этому типу.

Примеры функций:

ValueHelper::getNullOrInt($value, array $nullValues = ['']): ?int
ValueHelper::getNullOrIntFromArray(array $array, $key, array $nullValues = ['']): ?int
ValueHelper::getNullOrString($value, array $nullValues = ['']): ?string
ValueHelper::getNullOrStringFromArray(array $array, $key, array $nullValues = ['']): ?string
ValueHelper::assertArray($value): array


Пример использования:

ValueHelper::getNullOrInt('42'); // int: 42
ValueHelper::getNullOrInt(42); // int: 42
ValueHelper::getNullOrInt(''); // null
ValueHelper::getNullOrInt(null); // null


Несолько вопросов :)

1) Есть ли подобные готовые классы? (наверняка есть, но мне что-то не попадались)

2) Может я вообще что-то не то делаю и надо по другому?
источник

АХ

Александр Хакимов... in phpGeeks
(int)$variable
(string)$variable
(array)$variable
источник

СП

Сергей Предводителев... in phpGeeks
Александр Хакимов
(int)$variable
(string)$variable
(array)$variable
нет, это не то
источник

СП

Сергей Предводителев... in phpGeeks
если пустая строка или NULL, то я хочу NULL получить, в противном случае преобразовать к INT.
источник