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