簡體   English   中英

簡化PHP代碼

[英]Simplify PHP Code

我不想為一個很小的東西聲明一個變量。

$value = $this->getValue(); 
echo $value['Setting']['value'];

/ \\ $ this-> getValue()返回一個數組。

有這樣一種用法: echo $this->getValue()['Setting']['value']; 謝謝

您可以在PHP 5.4中做到這一點。 這稱為函數數組解引用 如果您使用<5.4,則說明您不走運。

但是,這並不是真正重要的問題。 這可能有點煩人,但這不是世界末日。

在您的getValue(); 函數,請確保返回$value['Setting']['value'] ,以便在調用函數上執行echo $value;

例如,我在控制器中有這個:

public function myFunction(){

     ...
     $value = $this->MyModel->getName($id);
     $this->set('value', $value);
}

...而且我在模型中有這個來獲取名稱值:

public function getName($id){

     $value = $this->find('first', array(
          'conditions' => array(
               'id' => $id 
          )
     ));

     return $value['MyModel']['name'];
}

...因此您可以執行以下操作:

echo $value;

看一下蛋糕核心中的所有類都做了多少。 配置:: read(),CakeSession :: read(),$ this-> request-> query(),$ this-> request-> data()等。它們都能夠通過點語法返回該值。 因此,您也可以在這里。

所以最后您可以說:

echo $this->getValue('Setting.value'); 

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM