我想從Facebook獲取數據。所以我嘗試從他們的數組中獲得user_id
。
問題是一些user_id
都這麼久了,當我試圖把它返回像PHP處理長整數
1.00003247906E+14
,而不是
100003247905698
我該如何解決這個問題?我需要實際的user_id
。
我試着使用:
$targets = (string)($status->actor_id);
,但它仍然返回相同的。
我想從Facebook獲取數據。所以我嘗試從他們的數組中獲得user_id
。
問題是一些user_id
都這麼久了,當我試圖把它返回像PHP處理長整數
1.00003247906E+14
,而不是
100003247905698
我該如何解決這個問題?我需要實際的user_id
。
我試着使用:
$targets = (string)($status->actor_id);
,但它仍然返回相同的。
的這種速戰速決:
printf("%14.0f", 1.00003247906E+14);
將打印
100003247905698
你怎麼知道'... 06'實際上代表了...... 05698'? –
@ÁlvaroG.Vicario根據OP這應該是數字。 –
這只是一個例子。如果事先知道身份證,他可以首先將其定義爲字符串。 100003247905697,100003247905698,100003247905699 ...他們都打印爲1.00003247906E + 14。 –
$targets = (string)($status->actor_id);
必須返回和無效的值,因爲無效值必須已經是$狀態
裏面你實際上直接打印檢索到的user_id(如通過print_r($status)
)?
'$ status'不是一個數組,因此'print_r'將不起作用 – Raptor
ah k 。我想假設代碼沒有發佈在這個問題可能不是一個好主意 –
默認情況下,PHP將轉換所有整數是超出範圍浮動。使用BC數學來處理大整數(但似乎有點壓倒性) – Raptor
你需要它們作爲整數嗎?對於大多數情況下處理它們的字符串應該工作 –
OP已經試圖將其轉換爲字符串 – Raptor