我目前在Laravel中構建代碼,並在我的代碼中添加了(array)
部分,以便在陣列中沒有數據被傳遞時修復了我的laravel sync問題。 This is the question我從中學到並獲得了(array)
的代碼使用。(數組)語法是做什麼的?
我很難找到這個laravel或php的文檔,並想知道(array)
代碼來自哪種語言/框架,以及它究竟做了什麼。如果你能指引我到正確的文檔頁面,我也會喜歡它。
我目前在Laravel中構建代碼,並在我的代碼中添加了(array)
部分,以便在陣列中沒有數據被傳遞時修復了我的laravel sync問題。 This is the question我從中學到並獲得了(array)
的代碼使用。(數組)語法是做什麼的?
我很難找到這個laravel或php的文檔,並想知道(array)
代碼來自哪種語言/框架,以及它究竟做了什麼。如果你能指引我到正確的文檔頁面,我也會喜歡它。
這是創建利用現有變量數組的只是另一種方式
$x = 1; // int
$y = (array)$x; // array[0] => 1
$z = [$x]; // array[0] => 1
我要指出的是,過去的方式將是首選(直接宣告它作爲一個數組),因爲它更清晰會發生什麼(當轉換這樣的值時,類型雜耍會產生意想不到的結果)。
http://php.net/manual/en/language.types.array.php#language.types.array.casting
我覺得你與型鑄造在PHP的過程中苦苦掙扎,比如:
PHP型鑄造陣列
我們可以使用任何數據類型變量轉換成數組(數組)關鍵字。任何標量數據類型轉換爲數組將在第0個索引處創建數組並添加元素。
例如:
<?php
var_dump((array) , 5);// value 5 in the array with 0th index
var_dump((array) NULL);// Will be empty array
?>
var_dump((array),5); //數組中的第5個索引是什麼意思,不應該有',' –
這只是一個陣列castring,根據php手冊
對於任何整數的種類,浮點,字符串,布爾和r esource, 將值轉換爲數組會得到一個數組,其索引爲零,且標量的值爲 轉換後的數組結果爲單個 元素。換句話說,(array)$ scalarValue與 數組($ scalarValue)完全相同。
如果一個對象被轉換爲一個數組,那麼結果就是一個數組,其 元素是該對象的屬性。密鑰是成員變量 的名稱,但有一些值得注意的例外:整數屬性爲 無法訪問;私有變量的類名前加 變量名;受保護變量的變量名前加'*'作爲前綴。這些前置值在任一側都有空字節。 這可能會導致一些意外的行爲:
<?php
>
> class A {
> private $A; // This will become '\0A\0A' }
>
> class B extends A {
> private $A; // This will become '\0B\0A'
> public $AA; // This will become 'AA' }
>
> var_dump((array) new B()); ?>
以上會出現有一個名爲「AA」兩個鍵,雖然 一個他們實際上是一個名爲「\ 0A \ 0A」。
將NULL轉換爲數組會導致一個空數組。
我會假設Laravel。我從未在任何我看過的PHP代碼中看到'(array)'。 –
[類型雜耍](http://php.net/manual/en/language.types.type-juggling.php)是你正在尋找。 – Gerrit0
@ElroyJetson Laravel沒有語法。這不是一種語言。 –