Это больше вопрос о том, почему, а затем как, но это уже несколько дней меня раздражает.В настоящее время я немного работаю с CodeIgniter и временно возвращаюсь к PHP из Ruby, сообщая мне о следующей магической области видимости.
<?php $query = $this->db->get('articles', 2);
if ($query->num_rows() > 0)
{
foreach ($query->result_array() as $row)
{
$data[] = $row; # <-- first appearance here
}
return $data; # <--- :S what?!
}
Как видите, я не совсем гуру PHP, но идеяиз локальной области видимости выдает мне сообщение о том, что вне цикла foreach переменная «доступна».Итак, я попробовал это в представлении:
<?php
if($a==1)
{
$b = 2;
}
echo $b;
?>
, что приводит к сообщению об ошибке:
Message: Undefined variable: b
В руководстве по PHP рассказывается о локальной области видимости, но я все еще задаюсь вопросом, почему этобывает, и если есть особые правила, о которых я не знаю.И это пугает меня:)
Спасибо за обмен идеями,