PHP Как запретить foreach переопределять внешние переменныеPhp

Кемеровские программисты php общаются здесь
Ответить
Anonymous
 PHP Как запретить foreach переопределять внешние переменные

Сообщение Anonymous »

В настоящее время я пытаюсь очистить как можно больше кода на веб-сайте компании, в которой работаю, без его полного переписывания (такие вещи, как удаление глупых комментариев, таких как // объявление переменных, чистое именование переменных, согласованность и т. д.). Код представляет собой огромный беспорядок и ужасен, использует множество файлов, которые включаются, и между файлами используются переменные, что очень раздражает.

Проблема в том, что такая простая вещь, как переименование переменной, на самом деле может сильно сломаться. В настоящее время у меня возникла следующая проблема:

В файле a у меня есть запрос, который выглядит примерно так:

Код: Выделить всё

$getProductSql = 'QUERY';
$getProduct = $db->prepare($getProductSql);
// some bind values etc.
$getProduct->execute();
$product = $getProduct->fetch(PDO::FETCH_ASSOC);
Теперь, после того как этот файл будет включен в индекс, будет включен файл b, который содержит следующее:

Код: Выделить всё

$getProductsSql = 'QUERY';
$getProducts = $db->prepare($getProductsSql);
// some bind values etc.
$getProducts->execute();

foreach ($getProducts->fetchAll(PDO::FETCH_ASSOC) as $product) {
// some code
}
После подключения этого файла будет включен файл c, который содержит следующее:

Код: Выделить всё

if ($product['COLUMN'] === '1')
В файле c следует использовать переменную $product из файла a, но из-за особенностей нашей структуры и включения файла b между ними, $product из файла a заменяется последним значением $product из цикла в файле b.

Есть ли способ решить эту проблему без использования двух разных имена переменных или движущийся код?

Подробнее здесь: https://stackoverflow.com/questions/535 ... -variables
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «Php»