Вопрос переменной PHP - PullRequest
       14

Вопрос переменной PHP

0 голосов
/ 23 декабря 2010

У меня проблема с моими PHP-переменными, и я установил для них правильное значение.В основном у меня есть метод, который проверяет, существует ли у вас магазин, а также есть ли в этом магазине родственный магазин.Затем я проверяю, отображается ли это хранилище как изображение в файловой системе, если оно не отображается, и я ожидаю изображения.

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

if(isset($storelocation)) {
  //var_dump($sofalocation);
  $path = $_SERVER{'DOCUMENT_ROOT'}.'/webroot/images/stores/'.strtolower(str_replace(' ', '-', $storelocation['storename'])).'.jpg';
  if(file_exists($path)) {
    //echo $path;
    $this->assign('storeimage', 'images/stores/'.strtolower(str_replace(' ', '-', $storelocation['storename'])).'.jpg');
    //var_dump($sofalocation['storename']);
  } else {
    echo $path;
    $this->assign('storeimage', 'images/stores/awaiting-image.jpg');
  }
}

if(isset($sisterlocation)) {
  $path = $_SERVER{'DOCUMENT_ROOT'}.'/webroot/images/stores/'.strtolower(str_replace(' ', '-', $sisterlocation['storename'])).'.jpg';
  if(file_exists($path)) {
    $this->assign('sisterimage', 'images/stores/'.strtolower(str_replace(' ', '-', $sisterglocation['storename'])).'.jpg');

  } else {
    echo $path;
    $this->assign('sisterimage', 'images/stores/awaiting-image.jpg');
   // var_dump($sisterlocation['storename']);
  }  
}

Любопытно, что isset размещения хранилища, похоже, не работает, если я не передам переменную перед isset, есть лиидеи?

1 Ответ

0 голосов
/ 23 декабря 2010

Создайте защищенный метод для этого и передайте store в качестве аргумента. Это решит вашу проблему.

protected function _prepareImage( $storeName, $storeLocation )
{
    $path = $_SERVER{'DOCUMENT_ROOT'}.'/webroot/images/stores/'.strtolower(str_replace(' ', '-', $storeLocation['storename'])).'.jpg';
  if(file_exists($path)) {
    $this->assign($storeName, 'images/stores/'.strtolower(str_replace(' ', '-', $storeLocation['storename'])).'.jpg');

  } else {
    echo $path;
    $this->assign($storeName, 'images/stores/awaiting-image.jpg');
   // var_dump($storeLocation['storename']);
  } 
}
...