ASP.NETJavaScriptPHP

eval使用時にJsonでの改行について

1 Mins read

Jsonの項目内の改行コードの記述方法について

サーバーサイドでは\マークはエスケープ文字としてよく利用されている為に
ついつい”\n”の状態にてJsonに含めるとクライアントサイドのeval時にエラーとなる。

なのでエスケープされる場合は”\\n”と2回つけることを忘れべからず!
もちろん多数ある場合も改行コードを上記のように置換処理をすること!

PHPの場合はダブルクォート「”」とシングルクォート「’」でエスケープされる、
されないが変わるので、どちらかに統一するのが望ましい。

これはJsonだけの話ではないが、重要なので記述!
javascript側では受け取ったJsonを展開するときにカッコで囲ってあげること!
例:var a = eval(‘(‘+json+’)’); //このカッコ追加は結構注意!

覚書(^ ^)

Read more
ApachePHP日記

mod_rewriteでError 403

1 Mins read

mod_rewriteを使用してアクセス・・・・・・Error 403???
はて?・・・はて?

Apacheのログを見ると

Options FollowSymLinks or SymLinksIfOwnerMatch is off which implies that RewriteRule directive is forbidden:

あっ!

Directoryに「Options FollowSymLinks」が必要だった(汗)
(シンボリックリンクをOKにしないと!)

ナイス!ログ君(笑)

Read more
PHP日記

PHPでsafe_modeとregister_globals

1 Mins read

php.iniの設定時に当たり前のことだけど、「あれ?どっちがどっちだっけ?」となるので覚書

環境、Apache2.2、PHP5.2.6

safe_mode=On

register_globals=Off

ちなみにこれは
register_argc_argv=On

PHP6ではsafe_mode & register_globalsはなくなる予定!

Read more
PHP日記

PHP Debug環境構築 ZendDebugger使用

1 Mins read

ZendDebuggerにてPHPのDebug環境構築 By php.ini編

環境、Apache2.2、PHP5.2.6

ステップ実行や変数の内容が見れるので楽に開発がすすむのでお薦め
環境はeclipseからPHPプラグインより使用します。

時間があったらeclipse設定方法も記載します(苦笑)
もちろん、ZendStudioっていうのもありです・・・こちらも結局eclipseかぁ(汗)

php.iniに以下を記載(php ver5.2.6)

・Linuxの場合
[ZendDebugger]
#「zend_extension_manager」無し(zend_optimizerなどと併用)
zend_extension="/hoge/zendDebugger/5_2_x_comp/ZendDebugger.so"
 
#「zend_extension_manager」有り(フォルダ名はzendDebugger直下に「php-5.2.x」)
zend_extension_manager.debug_server="/hoge/zendDebugger"
 
zend_debugger.allow_hosts = 127.0.0.1/32,192.168.0.0/24
zend_debugger.expose_remotely = always
zend_debugger.deny_hosts = all

・Windowsの場合
[ZendDebugger]
#「zend_extension_manager」無し(zend_optimizerなどと併用)
zend_extension_ts="D:\hoge\php\zendDebugger/5_2_x_comp/ZendDebugger.dll"
 
#「zend_extension_manager」有り(フォルダ名はzendDebugger直下に「php-5.2.x」)
zend_extension_manager.debug_server_ts = "D:\hoge\php\zendDebugger"
 
zend_debugger.allow_hosts = 127.0.0.1/32,192.168.0.0/24
zend_debugger.expose_remotely = always
zend_debugger.deny_hosts = all

注意点はLinuxの場合「zend_extension」として「_ts」はいらない
「zend_extension_manager.debug_server」の時も同じ

スレッドセーフか非スレッドセーフなどでも設定が変わるので詳しくはここもチェック

Read more
PHP日記

PHP環境の高速化 Zend_Optimizer eAccelerator

1 Mins read

PHPで高速化といえば、「eaccelerator」と「zend_optimizer」が有名だが、
CentOS5.2で確認した結果、eacceleratorのみの使用が一番速かった。

eaccelerator+zend_optimizerは逆に遅くなったので注意が必要!
なので「eaccelerator」だけでOK♪

Read more