Есть код php, который не пропускает формат jpeg, в чем проблема я уже понял, когда он находит формат jpeg в массиве, возвращает true и следом порядковый номер элемента, а номер элемента 0 и условие интерпретирует его как false. Как решить эту проблему?
if(isset($_POST['article-add'])) {
$imageinfo = getimagesize($_FILES['article-image']['tmp_name']);
$arr = array('image/jpeg','image/gif','image/png');
if (array_search($imageinfo['mime'],$arr)) {
echo "Такой формат есть";
echo array_search($imageinfo['mime'],$arr);
}
else {
echo "Такого формата нет";
echo array_search($imageinfo['mime'],$arr);
}
}
<form enctype="multipart/form-data" action="index.php" method="post">
<label for="article-image">Картинка статьи:</label><br>
<input type="file" id="article-image" name="article-image">
<button name="article-add" type="submit">Отправить</button>
</form>
Эта функция может возвращать как логическое значение FALSE, так и
значение не типа boolean, которое приводится к FALSE. За более
подробной информацией обратитесь к разделу Булев тип. Используйте
оператор === для проверки значения, возвращаемого этой функцией.
https://www.php.net/manual/ru/function.array-search.php
Из чего следует, что вам необходимо использовать оператор ===
, а вашем случае его эквивалент НЕ равно: !==
.
Ваш код:
...
if (array_search($imageinfo['mime'],$arr) !== false) {
...
Айфон мало держит заряд, разбираемся с проблемой вместе с AppLab
Перевод документов на английский язык: Важность и ключевые аспекты
довольно стыдно это признавать, но не могу разобраться с wildflyЯ создал простенькое web приложение на java, чтобы проверить как работает wildfly, но он открывает...
у меня в приложении на Google карте маркеры видны в радиусе 100 метров как сделать так чтобы когда я передвигался карта автоматически обновлялась...
Программы, написанные на языке Java, исполняет JVM (Java Virtual Machine – виртуальная машина Java)JVM — это специальная программа, которая умеет исполнять...
Установила Java и JDKПроверяю функционирование через cmd, пишет, что javac не найден