Синтаксическая ошибка php в строке 9
Я смотрю на это уже час. Там написано, что у меня ошибка разбора: синтаксическая ошибка, неожиданное '{' в строке 9.
Может кто-нибудь, пожалуйста, посмотрите на это для меня. Заранее спасибо.
<?php
if(isset($_POST['submit']))
{
function foo($a, $b)
{
foreach(array_keys($a) as $i)
{
if(array_key_exists($i, $b){
$result[$i] = $a[$i]*$b[$i];
}else{
$result[$i] = 0;
}
}
foreach(array_keys($b) as $i)
{
if(not array_key_exists($i, $a){ //exists in b but not i a
$result[$i] = 0;
}
}
return $result
}
}
?>
3 ответа
Вы неправильно закрыли скобки:
if(array_key_exists($i, $b){
должно быть
if(array_key_exists($i, $b)){
Вам не хватает )
на этой линии:
if(array_key_exists($i, $b){
должно быть:
if(array_key_exists($i, $b)){
Вы пропустили скобку в вашем первом if
:
if(array_key_exists($i, $b){
должно быть
if(array_key_exists($i, $b)){
Также, not
недопустимый оператор (и скобки также отсутствуют). Так
if(not array_key_exists($i, $a){
должно быть
if(! array_key_exists($i, $a)){
И, наконец, вам не хватает ;
в вашем ответном заявлении:
return $result;
Я бы посоветовал вам использовать PHP IDE, такой как Eclipse, который будет указывать на синтаксические ошибки. Мы все делаем ошибки, и поиск пропущенных скобок в текстовом редакторе может быть очень неприятным.