2015-10-08 161 views
-4

我的問題是關於操作數組元素的PHP函數,如array_pop()和array_shift()。PHP:從陣列中刪除元素

在我看到(包括php.net),因爲這些函數返回被移除的值,它們被分配到執行時的變量,例如所有實施例:

$exampleArray=array("1","2","3"); 
$removedNum=array_pop($exampleArray); 

什麼我不能t find是指您是否必須分配已刪除的值,或者您是否可以從最後彈出該值並完成該操作(例如,在Ruby中)。 我試圖和它的作品,例如:

array_pop($exampleArray); 

,但我不知道這是在PHP編程可接受的做法?或者我應該總是把值賦給一個變量?

+0

感謝Paul,只是想確保它不會在大型應用程序中引起某些問題。 – Doctore

回答

0

你可以:

array_pop($exampleArray); 

您不必在值賦值給一個變量,如果你不需要使用它。

1

使用array_pop()array_shift()刪除不需要的值是有效的,在某些情況下,根據您正在使用的數據,甚至可以有意義。即,如果您使用的是CSV文件,並且該文件中有一行數組,那麼第一行是您知道的標題數據永遠不會更改(這是一個大膽的假設),並且這對您的無關緊要腳本,可以在開始循環處理值之前安全地從數組中移除第一行。

至於這是否是一個很好的做法還是不行,這東西跟人保持你的代碼來討論......

0

這取決於你的應用程序在做。例如,如果您的應用程序確實需要保存最後一個被彈出的號碼,那麼是的。否則,你不需要該變量。此外,它需要內存來創建一個變量。對於小型企業來說,這看起來可能並不多,但如果你有一個十億次的循環,那麼這會變得浪費。只要你的代碼是可讀的,你會沒事的:)。