Skip to content

Zeroplex 生活隨筆

軟體開發、伺服器和生活瑣事

小 縮小字型大小。 中 重設字型大小。 大 放大字型大小。

使用 ini_set() 設定 Xdebug function calls trace

Posted on 2014 年 1 月 14 日2021 年 3 月 12 日 By 日落 在〈使用 ini_set() 設定 Xdebug function calls trace〉中尚無留言

Xdebug 是一個在 PHP 上很好用的除錯工具,特別是 function calls tracing,可以很完整的列出執行流程。Xdebug 的介紹可以參考 Crboy 的文章:

  • Xdebug 基礎安裝與使用
  • Xdebug 遠端除錯 (Remote Debugging)

要讓 Xdebug 在 PHP 開始執行時自動 trace function calls,只需要在 ini file 加上 xdebug.auto_trace = On 即可。若沒有系統權限,仍可以使用 PHP 的 ini_set() 設定 Xdebug 各項參數:

<?php

ini_set('xdebug.trace_output_dir', '/tmp/xdebug');
xdebug_start_trace();  // start tracing

// beginning of program

要注意的是,tracing 的設定會在 PHP 開始執行前便載入,所以使用 ini_set() 設定 xdebug.auto_trace 是不會起作用的:

<php

ini_set('xdebug.auto_trace', 'On');  // 沒有作用
ini_set('xdebug.trace_output_dir', '/tmp/xdebug');

// beginning of program

ps. 若 auto trace 已啟動,要記得定期清理 log,免得硬碟被吃光導致機器故障。

Tags:PHP

GNU screen Session Rename

Posted on 2014 年 1 月 8 日2021 年 3 月 12 日 By 日落 在〈GNU screen Session Rename〉中尚無留言

screen 可以在建立時,為 session 命名:

$ screen -S name

若日後需要修改名稱,可以先 attach session 以後,按下 C-a,在輸入指令:

:sessionname newName

之後 screen -r 就可以看到新的名稱。

Tags:Linux

Javascript 斷行造成 parse 錯誤

Posted on 2013 年 12 月 31 日2021 年 3 月 12 日 By 日落 在〈Javascript 斷行造成 parse 錯誤〉中尚無留言

當宣告一個有換成的字串,部份程式語言允許可以在引號中直接加入換行:

var foo = "space 
inside"

但上面語句在 javascript 執行會產生 syntax error。

在 javascript 中,語句結束不一定要加上分號,直譯器會判斷在適當的位置加上「;」。所以上述的程式會被 javascript 解讀成:

var foo = { prop: "some;
thing"};

其他:
[JavaScript] 自動補上分號的機制造成非預期的回傳值
http://wbkuo.pixnet.net/blog/post/162042779

Tags:JavaScript

GNU screen 交換 window 順序

Posted on 2013 年 12 月 19 日2021 年 3 月 12 日 By 日落 在〈GNU screen 交換 window 順序〉中尚無留言

若要交換 window 1 和 window 5 的順序,先 focus 到 window 1,再進入指令模式:

C-a :number 5

windows 1 和 windows 5 的順序便會對調。

Tags:Linux, 資訊學習

Chrome 透過 console.dir() 取得 javascript 物件屬性

Posted on 2013 年 12 月 16 日2021 年 3 月 12 日 By 日落 在〈Chrome 透過 console.dir() 取得 javascript 物件屬性〉中尚無留言
Chrome 透過 console.dir() 取得 javascript 物件屬性

若不曉得物件中有哪一些屬性、方法可以使用,可以透過 console.dir() 將其列出。

var foo = ['1', '2', 3];
console.dir(foo);

Chrome 會屬性、方法印出:

若不曉得傳入物件的詳細定義,這招很方便。但只有在 Chrome 上印出的資訊會這麼詳細,Firefox 和 nodejs console 上,印出來的就和 console.log() 差不多。

感謝 Eason 指點。

Tags:JavaScript

文章分頁

上一頁 1 ... 113 114 115 ... 319 下一頁

其他

關於我  (About me)

  文章 RSS Feed

  留言 RSS Feed

Apache AWS Bash C/C++ Docker FreeBSD GCP Git Google Java JavaScript Laravel Linux Microsoft MSSQL MySQL Nginx PHP PHPUnit PostgreSQL Python Qt Ubuntu Unix Vim Web Windows WordPress XD 作業系統 分享 好站推薦 專題 攝影 新奇搞笑 新聞 旅遊 生活雜記 程式設計 網路架站 網頁設計 資訊學習 資訊安全 遊戲 音樂


創用 CC 授權條款
本著作係採用創用 CC 姓名標示-相同方式分享 4.0 國際 授權條款授權.