發表文章

目前顯示的是 七月, 2010的文章

將多階層JOSN 轉成php 陣列的方式

這幾天剛好在研究facebook api

它們使用的方式就是用json把值回傳給我們,但是呢?大部分的API回傳值都是多階層的JSON不是單階層的

json傳回的型態是obiect所以我們需要把json decode後再將資料轉變成陣列
如果只是單一階層的json object那麼我們只需要使用php官方提供的get_object_vars()函式就可以輕鬆搞定 
但是如果是多階層的就沒有官方的函式可以用了
拜訪google大神後發現有人提供了這樣的函式


function std_class_object_to_array($stdclassobject)
{
    $_array = is_object($stdclassobject) ? get_object_vars($stdclassobject) : $stdclassobject;

    foreach ($_array as $key => $value) {
        $value = (is_array($value) || is_object($value)) ? std_class_object_to_array($value) : $value;
        $array[$key] = $value;
    }

    return $array;
}
// print_r(std_class_object_to_array(json_decode($json_str)));
?> 在文件中先貼上這支function後,std_class_object_to_array()這隻函式就可以幫我們把多階層的object也加入陣列中瞜


是不是很方便阿!


參考資料來源:
PHP 將 Object 轉換成 Array (CLI JSON Reader) | Tsung's Blog

CENTOS 5 中 MySQL忘記密碼重新設定方法

在網路上面找到一堆沒用的資料好不容易又被我找到說對了的人

資料來源:http://www.tisswb.cn/archives/552.html

很剛好的我的mysql也是用yum安裝的


只要按照下面的步驟就可以完成更新的動作

# /etc/init.d/mysqld stop
# mysqld_safe --user=mysql --skip-grant-tables --skip-networking &
# mysql -u root mysql
mysql> UPDATE user SET Password=PASSWORD('newpassword') where USER='root';
mysql> FLUSH PRIVILEGES;
mysql> quit
# /etc/init.d/mysqld restart
# mysql -uroot -p