powを使って数値の最後の桁(最後からn桁)の数字を取得する

pow( )
引数で与えられた数値を指数の数だけ掛け合わせ、その結果を返します。
ただし、累乗が計算できない場合には、警告が発生し「false」」を返します。

数値のn桁目の数字を取得するには
10のn乗で割った余りを求める。

使用例

$numero=213

$a = $numero % (pow(10,1));

print $a;

:出力結果:::

3

$numero=213

$a = $numero % (pow(10,2));

print $a;

:出力結果:::

13

また忘れそう。。。

mossoró nov.2007

Sun enterprise450 で mfg-option invalid value の fix

“mfg-options invalid value”エラー

Sunのマシンを起動したら”mfg-options invalid value”エラーが。

sun.3113.comによるとenvのmfg-options を正しい値に設定するとのこと。

1)OKプロンプトに入る
2)mfg-optionsの値を正しい値に設定する
3)セットデフォルトコマンドを発行して値を有効にする。
4)マシンを再起動する。

詳細:

1)OKプロンプトに入る
OBPで何かしてるのであれば、STOP+A,コンソールの場合はAlt+Bとかを押してOKプロンプトに入ります。
OS上であればinit 0と入力します。

2)mfg-optionsの値を正しい値に設定する
(注記:E250、E450のようなワークグループサーバーでのみこのようなエラーに遭ったことがあります。
もしそれ以外のタイプのマシンであれば値は違うかもしれません。)
OKプロンプトで

setenv mfg-options server

と入力します。

3)セットデフォルトコマンドを発行して値を有効にする。
OKプロンプトで

set-defaults

と入力します。
次のように表示されるはず。

Setting NVRAM parameters to default values.
Platform is configured as a Server

4)マシンを再起動する。
OKプロンプトで

reset-all

と入力します。

コレでエラーメッセージは消えるはず。
それでも消えないなら、NVRAMの電池の寿命が原因かも。
OBPの変数が全部なくなっちゃう可能性があるのでNVRAMのチップを交換したほうが良いかも。

環境変数を見るときは
printenv

設定するときは
setenv 項目 値

ということですな。

文字列の〜文字目を取得する

最初から〜文字の場合は0から

$txt = supercalifragilisticexpialidocious;
$check = substr($txt,0,6);
print $txt

出力結果は → superc

6文字目から10文字

$txt = supercalifragilisticexpialidocious;
$check = substr($txt,6,10);
print $txt

出力結果は → alifragili

後ろから10文字目のトコから6文字

$txt = Pseudoantidisestablishmentarianism;
$check = substr($txt,-10,6);
print $txt

出力結果は → ntaria

後ろから10文字目のトコから後ろから6文字目のトコまで

$txt = Hepaticocholangiocholecystenterostomies;
$check = substr($txt,-10,-6);
print $txt

出力結果は → rost

maisa/RN

PHPでかんたんな画像アップローダー

保存先のフォルダを選べる画像アップローダを作成する

upload.phpのフォーム部分を記述します。

<table>
<form action=’upload.php‘ method=’post’ enctype=’multipart/form-data’>
<tr>
<td>ファイル:</td>
<td><input type=’file’ name=’upfile’ size=’30’></td>
</tr>
<tr>
<td>保存先:</td>
<td>
<select name=’folder’>
<option value=’img01/’>フォルダ1</option>
<option value=’img02/’>フォルダ2</option>
</select>
</td>
</tr>
<tr>
<td colspan = ‘2’ align=’center’>
<input type=’submit’ value=’アップロード’>
<input type=’hidden’ name=’phase’ value=’receive’>
</td>
</tr>
</form>
</table>

enctype=’multipart/form-data’

  • フォームからデータを送信するためのエンコードです。

    [upfile][name] ファイル名

    [upfile][type] ファイルタイプ image/jpeg など

    [upfile][tmp_name] アップロードされたファイルに一時的につけられる、パスを含むテンポラリファイル名 /tmp/phpJP00Aqなど

    [upfile][error] エラーがなければ0

    [upfile][size] ファイルサイズ

    が送られます。

phaseがreceiveだったら受け取る部分を実行します

if($phase == ‘receive’){

/***  受け取ったあとの処理 ***/

if( is_uploaded_file($_FILES[“upfile”][“tmp_name”])or die(“its not uploaded file”)){
if( move_uploaded_file($_FILES[“upfile”][“tmp_name”], $_POST[“folder”] . $_FILES[“upfile”][“name”])or die(“couldnt move the file”)){
chmod($_POST[“folder”] . $_FILES[“upfile”][“name”], 0644);
$file_name = $_POST[“folder”] . $_FILES[“upfile”][“name”];
$message = “ファイルをアップロードしました。


PHPでIEを判別する

Tibau / ceara

getenv(“HTTP_USER_AGENT”)

でブラウザ情報を取得し、

ereg( “MSIE”, 取得した情報 )

でその中に”MSIE”という文字列があるかどうかで判別します。

$HTTP_USER_AGENT = getenv(“HTTP_USER_AGENT”);

if(!ereg(“MSIE“, $HTTP_USER_AGENT)){

    print”IE<ではありません。";

}else{

print”IEです。”;

    }

HTTP_USER_AGENTはクライアントのブラウザがサーバへ送る
環境変数のひとつ