fork download
  1. <?php
  2. $a = array(
  3. "id" => "123",
  4. "name" => "Albert",
  5. "age" => "22",
  6. "email" => "poexavshiy@gmail.com",
  7. "password" => "12345",
  8. "birthday" => "12 september"
  9. );
  10. //Массив который проверяем
  11.  
  12. $a1 = array(
  13. "id",
  14. "name",
  15. "age",
  16. "email",
  17. "password",
  18. "birthday"
  19. );
  20. //В этом массиве храним все ключи которые должны быть в проверяемом массиве
  21.  
  22. foreach ($a as $name => $value) {
  23.  
  24.  
  25. if (in_array($name, $a1)) {
  26.  
  27. $name1[] = $name;
  28.  
  29. //Если в проверяемом массиве встречается ключ который нам нужен записываем его в другой массив
  30. //В ином случае записываем в другой массив
  31. }
  32.  
  33. else {
  34.  
  35. $name_fake[] = $name;
  36.  
  37. }
  38.  
  39.  
  40. }
  41.  
  42.  
  43.  
  44. if (count($name1) == count($a1)) {
  45.  
  46. echo "Все ключи на месте";
  47.  
  48. //Если размер массива в котором хранятся нужныеключи и полученного массива в ходе
  49. //проверки равны, тогда все ключи на месте
  50. }
  51.  
  52. else {
  53.  
  54. //В ином случае выведем какие ключи на месте а какие нет, для этого просто выведем
  55. //массивы которые мы сформировали в предыдущем цикле
  56. for ($i = 0; $i < count($name1); $i++) {
  57.  
  58. echo "В данном массиве присуствуют $name1[$i]<br>";
  59.  
  60. }
  61.  
  62. for ($i = 0; $i < count($name_fake); $i++) {
  63.  
  64. echo "А отсуствуют тут $name_fake[$i]<br>";
  65.  
  66. }
  67.  
  68. }
  69.  
  70.  
  71.  
  72. // your code goes here
Success #stdin #stdout 0.01s 20520KB
stdin
Standard input is empty
stdout
Все ключи на месте