2009-07-29 100 views
1

我想看看是否有我失蹤,讓我搶我只是用一個函數操縱數組的內容有些PHP語法..在執行一個函數之後獲取數組元素?

很好的例子:

$firstElement = sort($myArray)[0]; 

而正常情況下我會做到這一點:這樣做的

$myArray = sort($myArray); 
$firstElement = $myArray[0]; 

任何干淨的方式?

謝謝大家! Matt

回答

4

如果數組值不在變量中,則沒有訪問數組值的語法。有一個proposal to add such a syntax,但它被拒絕。

PS:sort只返回布爾值。所以你的例子不管用。

+0

好的。那麼我有不同的代碼 - 但我認爲它可能更有意義的顯示排序: - /。哈猜不。 – Matt 2009-07-31 09:26:47

2

像這樣的

$ firstElement =排序($ myArray的)語法[0];

是definitly nont可能 - 你已經注意到自己^^

如果你願意得到一個數組的第一元素,你可以使用reset功能,像這樣:

$list = array('z', 'c', 'd'); 
$element = reset($list); 
var_dump($element); 

它將顯示:

string 'z' (length=1) 

所述的副作用是,(報價):

復位()倒帶陣列的內部 指針的第一個元素和 返回第一陣列 元素的值。

順便說一句,作爲排序不返回數組,你cannont做到這一點:

$list = array('z', 'c', 'd'); 
$element = reset(sort($list)); 
var_dump($element); 

這將給予警告:

警告:重設()[function.reset ]: 通過的變量不是數組或 對象

+0

啊呀。我想要一個容易理解的例子,但它看起來像我搞砸了: - /。是啊,這比我的另一種方法有點混亂和冗長。我只是想知道如果我在我的PHP旅程中錯過了一些東西,會讓它更快!雖然謝謝! – Matt 2009-07-31 09:29:28

相關問題