PHP

PHPでのOracle利用(7)

以下のようなクエリを組んで実行した CREATE INDEX gis_sp_index ON gis_t(geom) INDEXTYPE IS MDSYS.SPATIAL_INSEX;結果は ORA-29833: 索引タイプが存在しませんむう? 矢張り、テーブルの作り直しから始めなければならないのか oci8関数でもそうだったが、…

PHPでのOracle利用(6)

接続検索のスクリプトが完成したので、具体的なクエリーを当てはめる そう、空間検索だ とりあえず、以下のようなクエリを組んでみた SELECT SDO_UTIL.TO_WKTGEOMETRY(geom) FROM gis_t WHERE SDO_FILTER(SDO_UTIL.FROM_WKTGEOMETRY( 'POLYGON ((5.0 1.0, 8.…

PHPでのOracle利用(5)

問題解決 何の事は無い、定義が緩い所為で空回りしている部分があっただけだった 定義を強化して解決。ともすれば、nullだった場合の回避も盛り込むべきなのかもしれない こんな感じになった 2007/12/13 * * 参考 * * Oracleを空間DBにした情報引出し * * ス…

PHPでのOracle利用(4)

前回、呼び出したジオメトリ情報が Array ( [ID] => 1 [SDO_UTIL.TO_WKTGEOMETRY(GEOM)] => OCI-Lob Object ( [descriptor] => Resource id #5 ) )という風になっていて、肝心のWKTを習得出来ずに困惑した 今回は、これの解決問題のジオメトリ情報が格納され…

PHPでのOracle利用(3)

処理には問題なさそうだが、何故エラーが排出されているのか とりあえず SELECT * FROM gis_tというクエリが怪しいと色々こねくり回してみる とりあえず、全ての行に対しての指定を止めて名称で指定してみる SELECT id FROM gis_tすると… Array ( [ID] => 1 …

PHPでのOracle利用(2)

前回、接続が出来ないとか何とか言ってたがいつのまにやら完了 phpでの接続確認も完了した。以下その時のメモOracle関数は、他の関数に比べて少々毛色が違う印象だ 流れとしては 接続 ↓ クエリー発行 ↓ レスポンスの習得 ↓ 切断(開放)だが、クエリー発行の部…

PHPでのOracle利用──Oracleエクステンション活性化(の注意事項)

いよいよphpで動かしてみる 以下、そのときに生じた問題対処覚えphp.iniより該当の記述のコメントアウトを消す extension=php_oci8.dllもう一つの接続は6で消される予定らしく、激しく推奨されないんでこっちだけ活性化オラクルさんをインストールする ※一応…

ちょっとした意味

@はエラー表示を抑制。変数に対して利用すればnullエラーが明示されなくなる >はオブジェクトのメンバにアクセス は静的なメソッド呼び出し ==暗黙の型変換をしてゆるい比較。文字列比較とかがこれにあたる ===は型情報も含めた厳密な比較

セットアップ楽々

http://sourceforge.net/project/downloading.php?groupname=phpdev5&filename=phpdev423.exe&use_mirror=nchc ※exe配布先直リンク 名称はphpdev ApacheとphpとMySQLが一括でセットアップされる 管理はphpdevで一括らしい XAMPP Apache HTTPD 2.0.52 MySQL 4…

PEARでのDB接続(SELECT編)

とりあえずソース 2,'portability'=>DB_PORTABILITY_ALL,); $db=&DB::connect($dsn, $options); if(PEAR::isError($db)) { die($db->getMessage()); } /*ここまで*/ /*単純なSELECT処理*/ //クエリー発行 $res=&$db->query('SELECT * FROM…

実行速度

str_replaceとereg_replaceだと、str_replaceの方が早い echoとprintとだと、printの方がリターンがあるため若干遅い変数は初期化して使用すると若干挙動が早くなるらしい

php(PEAR)の実行速度測定

start(); //セクション開始 $profiler->enterSection('i_cnt100'); for($i=0;$i<100;$i++) { $str[]=$i; } $profiler->leaveSection('i_cnt100'); //セクション終了 //セクション開始 $profiler->enterSection('j_cnt150'); fo…

NiigataLinuxでのPEAR利用について

デフォルトでインストールされていない(それらしいファイルは存在しているのだが…) 別途インストールする必要がある 公式リファレンスでは http://go-pear.org/ とか書いてあるが http://pear.php.net/go-pear が正しい主導インストール手順は http://pear.p…

楽しい文字列分割

strtok(String,String)文字列分割で、割合使い勝手が良いのがstrtokだ 第一引数に分割したい文字列を、第二引数に分割パターンを渡すと、結果が返される 動きとしてはあくまでパターンのC&Pの様子。動きの例は下記 $String="a/b"; $ReturnSting=strtok($Stri…

php色々

continue(int);現在の分岐を中止して、上位のループ処理に回帰する 引数に数値を渡すことで、回帰するループのレベルを指定できる。省略した場合には自動的にひとつ上位のループに回帰する あくまでループへの回帰であり、分岐は指定できない Fatal error: C…

php色々

http://itbtech.itboost.co.jp/man/php_man/configuration.html php.iniの項目リファレンス。こーいうのがhtml本来の役割である echo"";は気軽な出力 文字列演算式が不要で文字列と組み合わせた出力が可能 それ以外にも用途は広い。コーディングが早くなるht…

JSONをもっと楽に(in php)

JSONを利用するにあたって、文字列処理を用意するのは面倒だ と、いう事で関数を利用する json_encode($str)はエンコード。連想配列をJSON形式の文字列に変換する。連想配列の要素名と値がそれぞれの要素名と値になる。通常の配列をエンコードした場合は、値…

phpエラーメッセージ(の意味)

Allowed memory size of XXXXXX bytes exhausted (tried to allocate XX bytes)サーバーで許されているメモリを上回った モジュール文字列に対してのアクションで確認PHP.INIファイルのmemory_limitの設定値を要求しているメモリ量より大きくすれば解決 ただ…