fork download
  1. <?php
  2.  
  3. // Имеем сохраненные данные из формы, которые мы передаем во вью.
  4. $formData = [
  5. 'firstName' => 'Вова'
  6. //...
  7. ];
  8.  
  9. // Вариант 1, проверять существование ключа массива и его содержимое прямо в шаблоне
  10.  
  11. <input type="text" name="firstName" id="firstName" placeholder="Вася" value="<? if (isset($formData['firstName'])): echo $formData['firstName']; endif ?>">
  12.  
  13.  
  14. // Вариант 2, вынести проверку в класс-помощник
  15.  
  16. class Utils
  17. {
  18. public static function getValueFromArray(string $key, array $array): mixed
  19. {
  20. return (isset($array[$key])) ? $array[$key] : null;
  21. }
  22. }
  23.  
  24. <input type="text" name="firstName" id="firstName" placeholder="Вася" value="<?=Utils::getValueFromArray('firstName', $formData)?>">
  25.  
  26.  
  27.  
  28. // Вариант 3, проверять в шаблоне, но по-другому
  29. <?php if (empty($formData['firstName'])): ?>
  30. <input type="text" name="firstName" id="firstName">
  31. <? else: ?>
  32. <input type="text" name="firstName" id="firstName" value="<?=$formData['firstName']?>">
  33. <? endif; ?>
Runtime error #stdin #stdout #stderr 0s 82560KB
stdin
Standard input is empty
stdout
Standard output is empty
stderr
PHP Parse error:  syntax error, unexpected '<', expecting end of file in /home/3XBZDw/prog.php on line 11