#php
Вопрос:
У меня есть код, который выглядит так:
<?php
if (isset($_POST['username'],$_POST['first_name'],$_POST['surname'], $_POST['email'], $_POST['p'])) {
// Sanitize and validate the data passed in...
в файле под названием register.inc.php. Единственными ссылками на этот файл являются
include_once 'includes/register.inc.php';
в начальных строках нескольких других файлов.
Что вызывает недоумение, так это то, как именно вызывается условие php. Вызывается ли он непрерывно, чтобы, как только переменные были установлены, он срабатывал? Или он вызывается, когда загружается страница, содержащая его? Как бы то ни было, это, похоже, не называется обычной функцией. Все это кажется немного таинственным и необъяснимым. Кто-нибудь может мне помочь?
Спасибо.
Комментарии:
1. PHP-это интерпретируемый язык. Значение либо существует, либо его нет при запуске сценария. Это означает, что isset вызывается один раз за выполнение или в контексте веб-сервера один раз за запрос, включая этот PHP-код.
2. Я чувствую, что мы упускаем часть истории здесь: какое поведение вы продаете, которое заставляет вас думать, что «это не похоже на нормальную функцию»?
3. @NoahBoegli, интерпретируется или компилируется PHP (что на самом деле спорно), не имеет к этому особого отношения: функция запускается каждый раз, когда достигается эта часть программы, как и любая другая строка кода, и так же, как это было бы, если бы она была полностью скомпилирована.
Ответ №1:
Он вызывается только тогда, когда он вызывается. Если он находится в начале файла, то да, он будет вызван в том месте, где включен файл (в этом случае в месте include_once
вызова). Он выполняет проверку только один раз, возвращая значение true, если в момент его вызова все переменные существуют (установлены), в противном случае значение false.
Ответ №2:
Это может помочь вам в дальнейшем изучении PHP.
a = array ('test' => 1, 'hello' => NULL, 'pie' => array('a' => 'apple'));
var_dump(isset($a['test'])); // TRUE
var_dump(isset($a['foo'])); // FALSE
var_dump(isset($a['hello'])); // FALSE
Вышесказанное точно объясняет, как можно использовать функцию isset (). Если вы не уверены, как работает функция PHP, или ищете новую, попробуйте выполнить поиск функции на [https://www.php.net/][1] если вы введете здесь свою функцию, вы будете перенаправлены на соответствующую страницу.