[請益] chmod 八進位參數傳遞問題

看板PHP作者 (愛情已死枯如槁灰)時間11年前 (2012/09/06 19:30), 編輯推噓2(204)
留言6則, 2人參與, 最新討論串1/1
關於php document 對chmod($path, $mod)的說明中 $mod需要接受一個八進位的數字, 現在我遇到一個問題是 我chmod()這function是用在副函式中 因此我要外部傳遞參數至至chmod()時我發現我給的八進位數字都會被自動轉成十進位 不知道有沒有人可以跟小弟說一下如何讓參數傳遞時一致保持八進位的格式? 感謝! -- ※ 發信站: 批踢踢實業坊(ptt.cc) ◆ From: 140.109.183.149

09/06 19:55, , 1F
參數是int 八進位和十進位/十六進位表示方式同值即可..
09/06 19:55, 1F

09/06 20:24, , 2F
樓上的意思是說即使你傳 0644 進去 然後發現它變成 420
09/06 20:24, 2F

09/06 20:25, , 3F
但 chmod 卻仍然會用八進位去解讀這個數字
09/06 20:25, 3F

09/06 20:25, , 4F
所以沒有差別;如果你的意思是你外面給了 644 卻發現變成了
09/06 20:25, 4F

09/06 20:26, , 5F
十進位的 644 的話 那就拿出原來的字串 用intval(str,8)
09/06 20:26, 5F

09/06 20:26, , 6F
這樣就可以用八進位解讀外面傳的參數了
09/06 20:26, 6F
文章代碼(AID): #1GI8bZnu (PHP)