PHP文件与目录

PHP文件与目录

disk_total_space 返回目标磁盘总空间

disk_free_space返回目标磁盘剩余空间

$diskSpaceRes = disk_total_space(__DIR__ ) / pow(1024, 3);
$diskFreeRes =  number_format( disk_free_space(__DIR__)/pow(1024,3), 3);
echo sprintf( "%.3f"."
"
, $diskSpaceRes); echo $diskFreeRes;

filesize 返回目标文件大小(单位:字节)

$file = number_format(filesize('./test.mp4') / pow(1024, 1), 2) ."KB";
echo $file; // 712.05KB

常用简单函数

函数名 用途
is_writable 判断给定的文件名是否可写
is_readable 判断给定文件名是否可读
file_exists 检查文件或目录是否存在
is_file 判断给定文件名是否为一个正常的文件
is_dir 判断给定文件名是否是一个目录。
filemtime 回文件中的数据块上次被写入的时间(时间戳)
basename 返回路径中的文件名部分
dirname 返回路径中的目录部分
mkdir 支持递归的目录创建,参数分别是:目录、权限位、递归创建
rmdir 删除指定的目录,该目录必须是空的,而且要有相应的权限。
rename 重命名一个文件或目录,也可以进行文件移动。
copy 复制文件

fopen 用于打开文件或 URL 的函数。它用于创建一个文件指针,使您能够对文件进行读取、写入和其他操作。

mode 说明
‘r’ 只读方式打开,将文件指针指向文件头。
‘r+’ 读写方式打开,将文件指针指向文件头。
‘w’ 写入方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
‘w+’ 读写方式打开,将文件指针指向文件头并将文件大小截为零。如果文件不存在则尝试创建之。
‘a’ 写入方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
‘a+’ 读写方式打开,将文件指针指向文件末尾。如果文件不存在则尝试创建之。
‘x’ 创建并以写入方式打开,将文件指针指向文件头。如果文件已存在,则 fopen() 调用失败并返回 FALSE,并生成一条 E_WARNING 级别的错误信息。如果文件不存在则尝试创建之。
‘x+’ 创建并以读写方式打开,其他的行为和 ‘x’ 一样。
// 打开一个只读模式的文件
$handle = fopen('file.txt', 'r');

// 打开一个只写模式的文件,并将内容写入其中
$handle = fopen('file.txt', 'w');
fwrite($handle, 'Hello, World!');
fclose($handle);

// 打开一个追加模式的文件,并将内容追加到末尾
$handle = fopen('file.txt', 'a');
fwrite($handle, 'More content.');
fclose($handle);

注意:fopen() 打开文件后切记关闭文件指针! fclose();

fread 所读取的字符串, 或者在失败时返回 FALSE

function fread($stream, int $length): string|false {}  

fseek 可以在打开的文件中移动文件指针的位置,以便在不同位置进行读取和写入操作。

0 表示成功,返回 -1 表示失败

  • $handle:打开的文件指针资源。

  • $offset:要移动的字节数。

  •   $whence
    

    (可选):指定偏移量的基准位置。可使用以下常量之一:

    • SEEK_SET:从文件开头开始计算偏移量。
    • SEEK_CUR:从当前位置开始计算偏移量。
    • SEEK_END:从文件末尾开始计算偏移量。
$file = fopen('file.txt', 'r');
// 将文件指针移动到文件的第 10 个字节处
fseek($file, 10, SEEK_SET);
// 从当前位置向后移动 5 个字节
fseek($file, 5, SEEK_CUR);
// 从文件末尾向前移动 20 个字节
fseek($file, -20, SEEK_END);
fclose($file);


//例子:
$data = "./test.txt";
$f = fopen($data,'r');
fseek($f,200, 0);
$content = "";
while (!feof($f)){
    $content .= fread($f , 1024);
}
fclose($f);
echo $content;


**fwrite 写入文件,返回写入的字符数,出现错误时则返回 ** FALSE

fclose 关闭一个已打开的文件指针

feof 测试文件指针是否到了文件结束的位置

$handle = fopen('./text.txt','w+');
fwrite($handle,'Hello php');
fseek($handle, 0);
echo fread($handle, 999);
fclose($handle);

fgetc 读取一个字符

fgets 读取一行内容

fgetss 从文件指针中读取一行并过滤掉 HTML 标记。参数分别表示:资源对象、读取数量、允许标签。

fgetcsv 从文件指针中读入一行并解析 CSV 字段。

readfile 读取文件全部内容 (大文件慎用)

$data = './test.txt';
$handle = fopen($data,'r+');
while ($s = fgetc($handle)){
    echo $s;
}
while ($s = fgets($handle)){
    echo $s;
}
fclose($handle);


$handle = fopen('index.html','rb');
while(!feof($handle)){
    echo fgetss($handle,20,'

'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token function">fclose</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token variable">$data</span> <span class="token operator">=</span> <span class="token string single-quoted-string">'./customer.csv'</span><span class="token punctuation">;</span> <span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">fopen</span><span class="token punctuation">(</span><span class="token variable">$data</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'r'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">while</span> <span class="token punctuation">(</span><span class="token punctuation">(</span><span class="token variable">$res</span> <span class="token operator">=</span> <span class="token function">fgetcsv</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span> <span class="token punctuation">)</span><span class="token operator">!==</span> <span class="token constant boolean">false</span><span class="token punctuation">)</span><span class="token punctuation">{</span> <span class="token function">print_r</span><span class="token punctuation">(</span><span class="token variable">$res</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token function">fclose</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">header</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'Content-type:image/jpeg'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">readfile</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'user.jpeg'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> </code></pre> <p><strong>flock</strong> <strong>锁定文件操作,如果使用<code>flock</code> 锁定文件,必须保证在所有使用文件地方执行 <code>flock</code> 才有意义。如果过早的系统因为不支持锁定操作,函数执行将没有效果如 FAT 系统。</strong></p> <table> <thead> <tr> <th>锁定方式</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td><strong>LOCK_SH</strong></td> <td>取得共享锁定(读取的程序)</td> </tr> <tr> <td><strong>LOCK_EX</strong></td> <td>取得独占锁定(写入的程序)</td> </tr> <tr> <td><strong>LOCK_UN</strong></td> <td>释放锁定(无论共享或独占)</td> </tr> <tr> <td><strong>LOCK_NB</strong></td> <td>无法建立锁定时,此操作可不被阻断,马上返回进程。通常与 LOCK_SH 或 LOCK_EX 做 OR(|)组合使用。(Windows 系统上还不支持)</td> </tr> </tbody> </table> <pre><code class="prism language-php"><span class="token comment">//写锁 LOCK_SH</span> <span class="token comment">// 1.php</span> <span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">fopen</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'rb'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token variable">$stat</span> <span class="token operator">=</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_SH</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">sleep</span><span class="token punctuation">(</span><span class="token number">5</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">fgetss</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_UN</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//2.php</span> <span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">fopen</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'rb'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token variable">$stat</span> <span class="token operator">=</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_SH</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">fgetss</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_UN</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//读锁 LOCK_EX</span> <span class="token comment">//1.php</span> <span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">fopen</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'rb'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token variable">$stat</span> <span class="token operator">=</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_EX</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">sleep</span><span class="token punctuation">(</span><span class="token number">5</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">fgetss</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_UN</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//2.php</span> <span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">fopen</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'rb'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token variable">$stat</span> <span class="token operator">=</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_SH</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">fgetss</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_UN</span><span class="token punctuation">)</span><span class="token punctuation">;</span> </code></pre> <p><strong>防止阻塞</strong></p> <pre><code class="prism language-php"><span class="token comment">//1.php</span> <span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">fopen</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'ab'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token variable">$stat</span> <span class="token operator">=</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_EX</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">sleep</span><span class="token punctuation">(</span><span class="token number">5</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">fgetss</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_UN</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//2.php</span> <span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">fopen</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'ab'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token variable">$stat</span> <span class="token operator">=</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token class-name">LOCK_SH</span> <span class="token operator">|</span> <span class="token class-name">LOCK_NB</span><span class="token punctuation">,</span><span class="token variable">$wouldblock</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">if</span><span class="token punctuation">(</span><span class="token variable">$stat</span><span class="token punctuation">)</span><span class="token punctuation">{</span> <span class="token variable">$d</span> <span class="token operator">=</span> <span class="token function">fwrite</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'Hello Php!'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">echo</span> <span class="token function">fgetss</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token punctuation">}</span><span class="token keyword">else</span><span class="token punctuation">{</span> <span class="token keyword">echo</span> <span class="token string single-quoted-string">'file is locked'</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token function">flock</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">,</span><span class="token constant">LOCK_UN</span><span class="token punctuation">)</span><span class="token punctuation">;</span> </code></pre> <p><strong>file_put_contents 将一个字符串写入文件。</strong></p> <p><strong>file_get_content 将整个文件读入一个字符串,如果打开远程文件需要开启 php.ini 中的 <code>allow_url_fopen</code> 选项。</strong></p> <pre><code class="prism language-php"><span class="token function">file_put_contents</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'hello php'</span><span class="token punctuation">,</span><span class="token constant">FILE_APPEND</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token comment">//FILE_APPEND 文件后面追加</span> <span class="token function">file_get_contents</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'demo.txt'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">file_get_contents</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'https://bing.com'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> </code></pre> <p><strong>var_export</strong></p> <p>输出或返回一个变量的字符串表示。</p> <p>下面是将数组保存到文件中的代码,并支持 include 获取数组数据。</p> <pre><code class="prism language-php"><span class="token variable">$user</span> <span class="token operator">=</span> <span class="token punctuation">[</span> <span class="token punctuation">[</span><span class="token string single-quoted-string">'name'</span><span class="token operator">=></span><span class="token string single-quoted-string">'刘备'</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token punctuation">[</span><span class="token string single-quoted-string">'name'</span><span class="token operator">=></span><span class="token string single-quoted-string">'关羽'</span><span class="token punctuation">]</span><span class="token punctuation">,</span> <span class="token punctuation">[</span><span class="token string single-quoted-string">'name'</span><span class="token operator">=></span><span class="token string single-quoted-string">'张飞'</span><span class="token punctuation">]</span> <span class="token punctuation">]</span><span class="token punctuation">;</span> <span class="token variable">$content</span> <span class="token operator">=</span><span class="token function">var_export</span><span class="token punctuation">(</span><span class="token variable">$user</span><span class="token punctuation">,</span><span class="token constant boolean">true</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token function">file_put_contents</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'users.php'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'<?php return '</span><span class="token operator">.</span><span class="token variable">$content</span><span class="token operator">.</span><span class="token string single-quoted-string">';'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> </code></pre> <p><strong>opendir 函数类似于 fopen 操作方式,可能获取目录指针读取目录</strong></p> <p><strong>scandir 列出指定路径中的文件和目录</strong></p> <pre><code class="prism language-php"><span class="token variable">$handle</span> <span class="token operator">=</span> <span class="token function">opendir</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'../php'</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">while</span> <span class="token punctuation">(</span><span class="token constant boolean">false</span><span class="token operator">!==</span><span class="token punctuation">(</span><span class="token variable">$file</span> <span class="token operator">=</span> <span class="token function">readdir</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span><span class="token function">in_array</span><span class="token punctuation">(</span><span class="token variable">$file</span><span class="token punctuation">,</span> <span class="token punctuation">[</span><span class="token string single-quoted-string">'.'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'..'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">echo</span> <span class="token function">filetype</span><span class="token punctuation">(</span><span class="token variable">$file</span><span class="token punctuation">)</span><span class="token operator">.</span><span class="token string double-quoted-string">"\t"</span><span class="token operator">.</span><span class="token variable">$file</span><span class="token operator">.</span><span class="token string single-quoted-string">'<br/>'</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> <span class="token function">closedir</span><span class="token punctuation">(</span><span class="token variable">$handle</span><span class="token punctuation">)</span><span class="token punctuation">;</span> <span class="token keyword">foreach</span> <span class="token punctuation">(</span><span class="token function">scandir</span><span class="token punctuation">(</span><span class="token string single-quoted-string">'../php'</span><span class="token punctuation">)</span> <span class="token keyword">as</span> <span class="token variable">$file</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">if</span> <span class="token punctuation">(</span><span class="token operator">!</span><span class="token function">in_array</span><span class="token punctuation">(</span><span class="token variable">$file</span><span class="token punctuation">,</span> <span class="token punctuation">[</span><span class="token string single-quoted-string">'.'</span><span class="token punctuation">,</span><span class="token string single-quoted-string">'..'</span><span class="token punctuation">]</span><span class="token punctuation">)</span><span class="token punctuation">)</span> <span class="token punctuation">{</span> <span class="token keyword">echo</span> <span class="token function">filetype</span><span class="token punctuation">(</span><span class="token variable">$file</span><span class="token punctuation">)</span><span class="token operator">.</span><span class="token string double-quoted-string">"\t\t"</span><span class="token operator">.</span><span class="token variable">$file</span><span class="token operator">.</span><span class="token string single-quoted-string">'<hr/>'</span><span class="token punctuation">;</span> <span class="token punctuation">}</span> <span class="token punctuation">}</span> </code></pre> <p><strong>glob 寻找与模式匹配的文件路径。</strong></p> <table> <thead> <tr> <th>选项</th> <th>说明</th> </tr> </thead> <tbody> <tr> <td>GLOB_MARK</td> <td>在每个返回的项目中加一个斜线</td> </tr> <tr> <td>GLOB_NOSORT</td> <td>按照文件在目录中出现的原始顺序返回(不排序)</td> </tr> <tr> <td>GLOB_NOCHECK</td> <td>如果没有文件匹配则返回用于搜索的模式</td> </tr> <tr> <td>GLOB_ERR</td> <td>停止并读取错误信息(比如说不可读的目录),默认的情况下忽略所有错误</td> </tr> <tr> <td>GLOB_BRACE</td> <td>设置多个匹配模式,如:{<em>.php,</em>.txt}</td> </tr> </tbody> </table> <p><strong>遍历目录</strong></p> <pre><code class="prism language-text">$files = glob('../../*'); print_r($files); </code></pre> <p><strong>指定检索文件类型</strong></p> <pre><code class="prism language-text">$files = glob('*.php', GLOB_ERR); </code></pre> <p><strong>设置多个匹配模式</strong></p> <pre><code class="prism language-text">$files = glob("{*.php,*.txt}", GLOB_BRACE); print_r($files); </code></pre> <p><strong>目录大小</strong></p> <pre><code class="prism language-text">function dirSize($dir):int { $size= 0; foreach (glob($dir.'/*') as $file) { $size += is_file($file)?filesize($file):dirSize($file); } return $size; } echo round(dirSize('/home/vagrant')/1024/1024).'MB'; </code></pre> <p><strong>删除目录</strong></p> <pre><code class="prism language-text">function delDir($dir):bool { if (!is_dir($dir)) { return true; } foreach (glob($dir.'/*') as $file) { is_file($file)?unlink($file):delDir($file); } return rmdir($dir); } delDir('../php2'); </code></pre> <p><strong>复制目录</strong></p> <pre><code class="prism language-text">function copyDir($dir, $to):bool { is_dir($to) or mkdir($to, 0755, true); foreach (glob($dir.'/*') as $file) { $target = $to.'/'.basename($file); is_file($file)?copy($file, $target):copyDir($file, $target); } return true; } copyDir('../php', '../php2'); </code></pre> <p><strong>移动目录</strong></p> <p>移动目录分两步执行,第一步是复制目录,第二步是删除目录,所以使用上面两个函数的综合即可以。</p> <pre><code class="prism language-text">function moveDir($dir, $to):bool { copyDir($dir, $to); return delDir($dir); } </code></pre> </div> </div> </div> </div> </div> <!--PC和WAP自适应版--> <div id="SOHUCS" sid="1738323400310448128"></div> <script type="text/javascript" src="/views/front/js/chanyan.js"></script> <!-- 文章页-底部 动态广告位 --> <div class="youdao-fixed-ad" id="detail_ad_bottom"></div> </div> <div class="col-md-3"> <div class="row" id="ad"> <!-- 文章页-右侧1 动态广告位 --> <div id="right-1" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_1"> </div> </div> <!-- 文章页-右侧2 动态广告位 --> <div id="right-2" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_2"></div> </div> <!-- 文章页-右侧3 动态广告位 --> <div id="right-3" class="col-lg-12 col-md-12 col-sm-4 col-xs-4 ad"> <div class="youdao-fixed-ad" id="detail_ad_3"></div> </div> </div> </div> </div> </div> </div> <div class="container"> <h4 class="pt20 mb15 mt0 border-top">你可能感兴趣的:(PHP全世界最好的语言,php,android,开发语言,laravel,爬虫,后端,flask)</h4> <div id="paradigm-article-related"> <div class="recommend-post mb30"> <ul class="widget-links"> <li><a href="/article/1902103348379709440.htm" title="SassScript:Sass中的编程特性详解" target="_blank">SassScript:Sass中的编程特性详解</a> <span class="text-muted">算法探险家</span> <a class="tag" taget="_blank" href="/search/sass/1.htm">sass</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/css/1.htm">css</a> <div>Sass(SyntacticallyAwesomeStylesheets)是一种强大的CSS预处理器,它允许开发者使用类似于编程语言的语法来编写CSS,然后通过编译生成标准的CSS代码。SassScript是Sass中的编程特性集合,它包含了变量、嵌套规则、混合、函数以及控制指令等,极大地提高了CSS的开发效率和可维护性。1.变量SassScript中的变量允许开发者在样式表中存储和重复使用值。变</div> </li> <li><a href="/article/1902103349201793024.htm" title="Spring Boot实战:MySQL与Redis数据一致性深度解析与代码实战" target="_blank">Spring Boot实战:MySQL与Redis数据一致性深度解析与代码实战</a> <span class="text-muted">算法探险家</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a> <div>SpringBoot实战:MySQL与Redis数据一致性深度解析与代码实战一、数据一致性问题概述二、常见解决方案三、选择合适的解决方案四、总结在SpringBoot开发中,MySQL作为关系型数据库,提供了强大的数据存储和查询能力;而Redis作为内存数据库,以其高速读写性能成为缓存层的首选。然而,当这两者共同服务于一个系统时,如何确保它们之间的数据一致性,成为了一个不可忽视的问题。本文将深入探</div> </li> <li><a href="/article/1902103221132914688.htm" title="【AI大模型-提示词中的###和“““】" target="_blank">【AI大模型-提示词中的###和“““】</a> <span class="text-muted">NeVeRMoRE_2024</span> <a class="tag" taget="_blank" href="/search/AI%E5%A4%A7%E8%AF%AD%E8%A8%80%E6%A8%A1%E5%9E%8B-ChatGPT/1.htm">AI大语言模型-ChatGPT</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>提示词中活用###和"""(或其他特殊字符或格式)的原因主要基于以下几点:1.结构化与清晰性在编写提示词时,使用特殊字符如###和"""可以帮助将复杂的指令或上下文信息结构化,使其更加清晰易懂。这对于大型语言模型(LLMs)尤为重要,因为它们需要处理大量的输入信息,并据此生成输出。结构化的提示词有助于模型更好地理解用户的意图,减少误解的可能性。例如,使用###作为分隔符,可以将提示词中的不同部分(</div> </li> <li><a href="/article/1902103221925638144.htm" title="Vue 3 事件总线详解:构建组件间高效通信的桥梁" target="_blank">Vue 3 事件总线详解:构建组件间高效通信的桥梁</a> <span class="text-muted">QQ828929QQ</span> <a class="tag" taget="_blank" href="/search/vue.js/1.htm">vue.js</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/javascript/1.htm">javascript</a> <div>Vue3事件总线详解:构建组件间高效通信的桥梁为什么需要事件总线?使用mitt实现事件总线1.安装mitt2.创建事件总线3.在组件中使用事件总线发送端组件(例如ComponentA.vue)接收端组件(例如ComponentB.vue)自定义实现事件总线总结在复杂的前端应用中,组件之间的通信往往需要一种灵活且解耦的方式。传统的Vue2中,我们常使用全局事件总线来实现这种通信,但在Vue3中,由于</div> </li> <li><a href="/article/1902102967838896128.htm" title="MySQL常用函数详解及SQL代码示例" target="_blank">MySQL常用函数详解及SQL代码示例</a> <span class="text-muted">星河浪人</span> <a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>MySQL常用函数详解及SQL代码示例引言当前日期和时间函数字符串函数数学函数聚合函数结论引言MySQL作为一种广泛使用的关系型数据库管理系统,提供了丰富的内置函数来简化数据查询、处理和转换。掌握这些函数可以大大提高数据库操作的效率和准确性。本文将详细介绍MySQL中一些常用的函数,并配以SQL代码示例,帮助读者更好地理解和应用这些函数。当前日期和时间函数在当前时间(中国北京时间2025年03月1</div> </li> <li><a href="/article/1902102966945509376.htm" title="深入理解Java集合框架:构建高效、灵活的数据管理方案" target="_blank">深入理解Java集合框架:构建高效、灵活的数据管理方案</a> <span class="text-muted">漏洞猎人001</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>深入理解Java集合框架:构建高效、灵活的数据管理方案引言Java集合框架(JavaCollectionsFramework,JCF)是Java语言提供的一套用于表示和操作集合的统一架构。它包含了一系列的接口和类,用于存储和操作对象集合,如列表(List)、集合(Set)、映射(Map)和队列(Queue)等。集合框架的设计初衷是为了提供一套灵活、可重用且类型安全的集合数据结构,帮助开发者以统一和</div> </li> <li><a href="/article/1902102840491438080.htm" title="Linux基础指令详解:掌握Linux系统的必备技能" target="_blank">Linux基础指令详解:掌握Linux系统的必备技能</a> <span class="text-muted">智能编织者</span> <a class="tag" taget="_blank" href="/search/linux/1.htm">linux</a><a class="tag" taget="_blank" href="/search/%E6%9C%8D%E5%8A%A1%E5%99%A8/1.htm">服务器</a><a class="tag" taget="_blank" href="/search/%E8%BF%90%E7%BB%B4/1.htm">运维</a> <div>Linux基础指令详解:掌握Linux系统的必备技能一、Linux基础指令概述二、基础指令详解1.**ls**2.**cd**3.**pwd**4.**mkdir**5.**rmdir**6.**rm**7.**cp**8.**mv**9.**cat**10.**more**和**less**11.**chmod**12.**chown**13.**df**14.**du**15.**ps**16</div> </li> <li><a href="/article/1902102460210671616.htm" title="AGI大模型(5):提示词工程" target="_blank">AGI大模型(5):提示词工程</a> <span class="text-muted">不死鸟.亚历山大.狼崽子</span> <a class="tag" taget="_blank" href="/search/AGI%E5%A4%A7%E6%A8%A1%E5%9E%8B/1.htm">AGI大模型</a><a class="tag" taget="_blank" href="/search/agi/1.htm">agi</a> <div>1什么是提示词工程(Prompt)所谓的提示词其实指的就是提供给模型的⼀个⽂本⽚段,⽤于指导模型⽣成特定的输出或回答。提示词的⽬的是为模型提供⼀个任务的上下⽂,以便模型能够更准确地理解⽤户的意图,并⽣成相关的回应。2什么是提示⼯程(PromptEngineering)所谓的提示⼯程也可以被称为「指令⼯程」,提示⼯程的核⼼思想是,通过精⼼设计的提示,可以显著提⾼模型的性能和输出质量。貌似简单,但其实</div> </li> <li><a href="/article/1902102333899206656.htm" title="微软开源神器OmniParser V2.0 介绍" target="_blank">微软开源神器OmniParser V2.0 介绍</a> <span class="text-muted">魔王阿卡纳兹</span> <a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE%E8%A7%82%E5%AF%9F/1.htm">开源项目观察</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%A8%A1%E5%9E%8B%E7%9F%A5%E8%AF%86%E6%9C%AD%E8%AE%B0/1.htm">大模型知识札记</a><a class="tag" taget="_blank" href="/search/microsoft/1.htm">microsoft</a><a class="tag" taget="_blank" href="/search/OmniParser/1.htm">OmniParser</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E6%BA%90%E9%A1%B9%E7%9B%AE/1.htm">开源项目</a> <div>微软开源的OmniParserV2.0是一款基于纯视觉技术的GUI智能体解析工具,旨在将用户界面(UI)截图转换为结构化数据,从而实现对计算机屏幕上的可交互元素的高效识别和操控。这一工具通过结合先进的视觉解析技术和大型语言模型(LLM),显著提升了AI智能体在复杂环境下的识别能力和操作效率。核心功能与特点高精度识别:OmniParserV2.0在检测小尺寸可交互UI元素时的准确率显著提升,达到了3</div> </li> <li><a href="/article/1902101452369752064.htm" title="设计模式六大原则(3):依赖倒置原则" target="_blank">设计模式六大原则(3):依赖倒置原则</a> <span class="text-muted">岸似达春绿</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/string/1.htm">string</a><a class="tag" taget="_blank" href="/search/class/1.htm">class</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/setter/1.htm">setter</a><a class="tag" taget="_blank" href="/search/interface/1.htm">interface</a> <div>定义:高层模块不应该依赖低层模块,二者都应该依赖其抽象;抽象不应该依赖细节;细节应该依赖抽象。问题由来:类A直接依赖类B,假如要将类A改为依赖类C,则必须通过修改类A的代码来达成。这种场景下,类A一般是高层模块,负责复杂的业务逻辑;类B和类C是低层模块,负责基本的原子操作;假如修改类A,会给程序带来不必要的风险。解决方案:将类A修改为依赖接口I,类B和类C各自实现接口I,类A通过接口I间接与类B或</div> </li> <li><a href="/article/1902101326054092800.htm" title="Android Bootable Recovery 中的 `imgdiff.cpp` 文件解析" target="_blank">Android Bootable Recovery 中的 `imgdiff.cpp` 文件解析</a> <span class="text-muted">zhangjiaofa</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a> <div>AndroidBootableRecovery中的imgdiff.cpp文件解析引言在Android系统中,Recovery模式是一个非常重要的组成部分,它允许用户在设备无法正常启动时进行系统修复、数据恢复、OTA更新等操作。其中,OTA(Over-The-Air)更新是Android系统中常见的更新方式,它通过网络下载更新包并应用到设备上。为了优化更新包的大小,Android提供了一个高效的差分</div> </li> <li><a href="/article/1902101320110764032.htm" title="【异常】 The engine “node“ is incompatible with this module. Expected version “^14.18.0 || >=16.0.0“." target="_blank">【异常】 The engine “node“ is incompatible with this module. Expected version “^14.18.0 || >=16.0.0“.</a> <span class="text-muted">本本本添哥</span> <a class="tag" taget="_blank" href="/search/007/1.htm">007</a><a class="tag" taget="_blank" href="/search/-/1.htm">-</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E5%89%8D%E7%AB%AF%E6%8A%80%E6%9C%AF/1.htm">大前端技术</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a><a class="tag" taget="_blank" href="/search/yarn/1.htm">yarn</a><a class="tag" taget="_blank" href="/search/npm/1.htm">npm</a> <div>一、报错内容二、报错说明这个错误提示表示你的Node.js版本与该模块不兼容。三、报错解决3.1使用cnpm来安装cnpminstall3.2将Node.js版本升级到14.18.0或更高版本需要将Node.js版本升级到14.18.0或更高版本,或者降级到16.0.0或更高版本。你可以通过以下命令查看当前Node.js版本:node-v如果你需要升级或降级Node.js版本,可以访问Node.j</div> </li> <li><a href="/article/1902100816240635904.htm" title="如何申请Manus邀请码?手把手教你获取开发者权限/产品试用资格" target="_blank">如何申请Manus邀请码?手把手教你获取开发者权限/产品试用资格</a> <span class="text-muted">小小鸭程序员</span> <a class="tag" taget="_blank" href="/search/%E4%BA%91%E8%AE%A1%E7%AE%97/1.htm">云计算</a><a class="tag" taget="_blank" href="/search/%E4%BA%91%E5%8E%9F%E7%94%9F/1.htm">云原生</a><a class="tag" taget="_blank" href="/search/AI%E7%BC%96%E7%A8%8B/1.htm">AI编程</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/cloud/1.htm">cloud</a><a class="tag" taget="_blank" href="/search/%E4%BA%BA%E5%B7%A5%E6%99%BA%E8%83%BD/1.htm">人工智能</a> <div>引言Manus作为全球领先的VR/AR手势追踪与力反馈技术提供商,其产品如ManusPrime系列VR手套和CoreSDK深受开发者与科研团队青睐。但许多用户反馈,部分高级功能或产品试用需通过**邀请码(InvitationCode)**申请。本文将从零开始,详解Manus邀请码的申请流程、填写技巧与避坑指南。一、什么是Manus邀请码?作用:用于解锁开发者权限、申请硬件试用(如VR手套)、访问私</div> </li> <li><a href="/article/1902100059105849344.htm" title="使用GCC编译Notepad++的插件" target="_blank">使用GCC编译Notepad++的插件</a> <span class="text-muted">硫酸锌01</span> <a class="tag" taget="_blank" href="/search/Windows/1.htm">Windows</a><a class="tag" taget="_blank" href="/search/C%2FC%2B%2B/1.htm">C/C++</a><a class="tag" taget="_blank" href="/search/notepad%2B%2B/1.htm">notepad++</a><a class="tag" taget="_blank" href="/search/windows/1.htm">windows</a><a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a> <div>Notepad++的本体1是支持使用MSVC和GCC编译的2,但是Notepad++插件的官方文档3里却只给出了MSVC的编译指南4。网上也没有找到相关的讨论,所以我尝试在Windows上使用MinGW,基于GCC-8.1.0的posix-sjlj线程版本5,研究一下怎么编译:官方例程:https://github.com/npp-plugins/plugindemo语法修改:在StaticDia</div> </li> <li><a href="/article/1902100060666130432.htm" title="视觉工程师:工业相机50问" target="_blank">视觉工程师:工业相机50问</a> <span class="text-muted">钢铁男儿</span> <a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E8%A7%86%E8%A7%89/1.htm">机器视觉</a><a class="tag" taget="_blank" href="/search/%E6%9C%BA%E5%99%A8%E8%A7%86%E8%A7%89/1.htm">机器视觉</a><a class="tag" taget="_blank" href="/search/%E5%B7%A5%E4%B8%9A%E7%9B%B8%E6%9C%BA/1.htm">工业相机</a> <div>1:工业相机的丢帧的问题是由什么原因引起的?经常会有一些机器视觉工程师认为USB接口的工业相机会造成丢帧现象。一般而言,工业相机丢帧与工业相机所采用的传输接口是没有关系的,无论是USB,还是1394、GigE、或者是CameraLink。设计不良的驱动程序或工业相机硬件才是造成丢帧的真正原因:设计不良的工业相机之所以会发生丢帧的现象,其实就是资料通道的堵塞,无法及时处理,所以新的图像进来时,前一张</div> </li> <li><a href="/article/1902099932798578688.htm" title="解决Python中递归报错的问题" target="_blank">解决Python中递归报错的问题</a> <span class="text-muted">硫酸锌01</span> <a class="tag" taget="_blank" href="/search/Python/1.htm">Python</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a> <div>1、问题背景Duringhandlingoftheaboveexception,anotherexceptionoccurred:有没有见到过这个报错?当出现这个报错的时候,意味着报错信息特别特别地长,难以关注到有效信息。那么这种报错是如何产生的?以及如何设计才能避免产生这种冗长的报错?2、我的需求如果我有一个Python的多维数组列表:lst=[[[1,2],[3,4]],[[5,6],[7,8</div> </li> <li><a href="/article/1902099928268730368.htm" title="我的Notepad++插件推荐" target="_blank">我的Notepad++插件推荐</a> <span class="text-muted">硫酸锌01</span> <a class="tag" taget="_blank" href="/search/Windows/1.htm">Windows</a><a class="tag" taget="_blank" href="/search/ide/1.htm">ide</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E8%BE%91%E5%99%A8/1.htm">编辑器</a> <div>上一篇文章我对x86版本的Notepad++官方支持的167个第三方插件,做了一个总结和翻译介绍。这几天我对感兴趣的插件做了一些测试,推荐22个高频使用的实用插件。Notepad++的插件可以从菜单栏的插件-插件管理中查找并下载:或者也可以下载文件后将插件拷贝到Notepad++安装目录下的plugins目录下。其中本文提到的全部22个插件我已经上传到了网盘。其中我对dll文件使用了upx压缩,所</div> </li> <li><a href="/article/1902099424411185152.htm" title="Notepad++绿色版:便携高效的代码编辑器" target="_blank">Notepad++绿色版:便携高效的代码编辑器</a> <span class="text-muted">FasterThanMind</span> <div>本文还有配套的精品资源,点击获取简介:Notepad++是一款免费且无需安装的绿色版源代码编辑器,专为编程和文本处理设计。它支持多种编程语言的语法高亮、宏功能、增强的查找和替换、多文档界面、插件支持、编码转换、智能提示、个性化设置以及轻量级运行。Notepad++体积小、启动快,且对Windows平台具有良好的兼容性,适合在任何Windows系统计算机上使用,包括最新的Windows11。这款编辑</div> </li> <li><a href="/article/1902098165323067392.htm" title="标签转换脚本 - VOC格式转COCO格式,即voc2coco,xml2json 附VOC及COCO标签格式详解" target="_blank">标签转换脚本 - VOC格式转COCO格式,即voc2coco,xml2json 附VOC及COCO标签格式详解</a> <span class="text-muted">Limiiiing</span> <a class="tag" taget="_blank" href="/search/YOLO%E8%AE%AD%E7%BB%83%2F%E5%86%99%E4%BD%9C%E8%84%9A%E6%9C%AC/1.htm">YOLO训练/写作脚本</a><a class="tag" taget="_blank" href="/search/YOLO/1.htm">YOLO</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/1.htm">计算机视觉</a><a class="tag" taget="_blank" href="/search/%E7%9B%AE%E6%A0%87%E6%A3%80%E6%B5%8B/1.htm">目标检测</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a> <div>前言本文的脚本功能为将VOC数据集的标签文件xml转成COCO的标签文件,指定自己的VOC数据集的标签文件路径后,可一键运行转成COCO的标签文件。专栏目录:YOLO训练/写作脚本目录一览|涉及标签转换、数据扩充、热力图、感受野、精度曲线、数量统计等近百个脚本文件专栏地址:YOLO训练/写作脚本——丰富文章内容,增强实验信服力,助力发文!!!文章目录前言一、VOC数据集介绍1.1总体结构1.2各标</div> </li> <li><a href="/article/1902098038902550528.htm" title="标签转换脚本 - VOC格式转YOLO格式,即voc2yolo,xml2txt 附VOC及YOLO标签格式详解" target="_blank">标签转换脚本 - VOC格式转YOLO格式,即voc2yolo,xml2txt 附VOC及YOLO标签格式详解</a> <span class="text-muted">Limiiiing</span> <a class="tag" taget="_blank" href="/search/YOLO%E8%AE%AD%E7%BB%83%2F%E5%86%99%E4%BD%9C%E8%84%9A%E6%9C%AC/1.htm">YOLO训练/写作脚本</a><a class="tag" taget="_blank" href="/search/YOLO/1.htm">YOLO</a><a class="tag" taget="_blank" href="/search/%E6%B7%B1%E5%BA%A6%E5%AD%A6%E4%B9%A0/1.htm">深度学习</a><a class="tag" taget="_blank" href="/search/%E8%AE%A1%E7%AE%97%E6%9C%BA%E8%A7%86%E8%A7%89/1.htm">计算机视觉</a><a class="tag" taget="_blank" href="/search/%E7%9B%AE%E6%A0%87%E6%A3%80%E6%B5%8B/1.htm">目标检测</a> <div>前言本文的脚本功能为将VOC数据集的标签文件xml转成YOLO的标签文件,指定自己的VOC数据集的标签文件路径后,可一键运行转成YOLO的标签文件。专栏目录:YOLO训练/写作脚本目录一览|涉及标签转换、数据扩充、热力图、感受野、精度曲线、数量统计等近百个脚本文件专栏地址:YOLO训练/写作脚本——丰富文章内容,增强实验信服力,助力发文!!!文章目录前言一、VOC数据集介绍1.1总体结构1.2各标</div> </li> <li><a href="/article/1902097786757771264.htm" title="蓝桥杯Python赛道备赛——Day6:算术(二)(数学问题)" target="_blank">蓝桥杯Python赛道备赛——Day6:算术(二)(数学问题)</a> <span class="text-muted">SKY YEAM</span> <a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF%E5%A4%87%E8%B5%9B/1.htm">蓝桥杯备赛</a><a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF/1.htm">蓝桥杯</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E8%81%8C%E5%9C%BA%E5%92%8C%E5%8F%91%E5%B1%95/1.htm">职场和发展</a> <div>本期博客是蓝桥杯备赛中算术(数学问题)的第二期,包括:快速幂算法、逆元(模意义下的倒数)、组合数计算和排列数计算。每一种数学问题都在给出定义的同时,给出了其求解方法的示例代码,以供低年级师弟师妹们学习和练习。前序知识:(1)Python基础语法算术(二)(数学问题)一、快速幂算法二、逆元(模意义下的倒数)三、组合数计算四、排列数计算一、快速幂算法1.定义:快速计算大指数幂的算法。2.算法原理:二进</div> </li> <li><a href="/article/1902097534537494528.htm" title="蓝桥杯Python赛道备赛——Day1:基础算法" target="_blank">蓝桥杯Python赛道备赛——Day1:基础算法</a> <span class="text-muted">SKY YEAM</span> <a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF%E5%A4%87%E8%B5%9B/1.htm">蓝桥杯备赛</a><a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF/1.htm">蓝桥杯</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a> <div>本博客就蓝桥杯中的基础算法(这一部分说是算法,但更是一些简单的操作)进行罗列,包括:枚举、模拟、前缀和、差分、二分查找、进制转换、贪心、位运算和双指针。每一个算法都在给出概念解释的同时,给出了示例代码,以供低年级师弟师妹们学习和练习。前序知识:(1)Python基础语法(2)PythonOOP(面向对象编程)基础算法(操作)一、枚举二、模拟三、前缀和四、差分五、二分查找六、进制转换七、贪心八、位运</div> </li> <li><a href="/article/1902097156391628800.htm" title="如何用python做一个小程序进行炒股?" target="_blank">如何用python做一个小程序进行炒股?</a> <span class="text-muted">大懒猫软件</span> <a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%B0%8F%E7%A8%8B%E5%BA%8F/1.htm">小程序</a><a class="tag" taget="_blank" href="/search/%E5%BC%80%E5%8F%91%E8%AF%AD%E8%A8%80/1.htm">开发语言</a> <div>使用Python分析股票的完整程序以下是一个完整的Python程序,展示如何获取股票数据、进行数据清洗、计算技术指标、并进行简单的价格走势分析。1.安装必要的库首先,确保安装了必要的库:bash复制pipinstallrequestspandasmatplotlibyfinance2.获取股票数据使用yfinance库获取股票数据。yfinance是一个流行的库,可以方便地从雅虎财经获取股票数据。</div> </li> <li><a href="/article/1902096902955003904.htm" title="[RA-L 2023] Coco-LIC:基于非均匀 B 样条的连续时间紧密耦合 LiDAR-惯性-相机里程计" target="_blank">[RA-L 2023] Coco-LIC:基于非均匀 B 样条的连续时间紧密耦合 LiDAR-惯性-相机里程计</a> <span class="text-muted">十年一梦实验室</span> <a class="tag" taget="_blank" href="/search/c%2B%2B/1.htm">c++</a> <div>这段代码是一个基于C++的均匀B样条(UniformB-spline)实现,专门用于表示SE(3)变换(即三维空间中的刚体变换,包括旋转和平移)。以下是对代码的总结:1.许可证和版权使用BSD3-ClauseLicense,允许在满足条件的情况下自由分发和修改。版权归VladyslavUsenko和NikolausDemmel所有,属于Basalt项目的一部分。2.功能概述文件定义了一个模板类Se</div> </li> <li><a href="/article/1902096904171352064.htm" title="Android Api Demos登顶之路(九十五)Media-->AudioFx" target="_blank">Android Api Demos登顶之路(九十五)Media-->AudioFx</a> <span class="text-muted">fishtosky</span> <a class="tag" taget="_blank" href="/search/Android/1.htm">Android</a><a class="tag" taget="_blank" href="/search/ApiDemos/1.htm">ApiDemos</a><a class="tag" taget="_blank" href="/search/apidemon/1.htm">apidemon</a><a class="tag" taget="_blank" href="/search/audio/1.htm">audio</a><a class="tag" taget="_blank" href="/search/mediaplayer/1.htm">mediaplayer</a><a class="tag" taget="_blank" href="/search/visulizer/1.htm">visulizer</a><a class="tag" taget="_blank" href="/search/equalizer/1.htm">equalizer</a> <div>/**这个demon演示了在进行音频播放时如何使用Visualizer和Equalizer类为音频定制*示波器和均衡器。*/publicclassMainActivityextendsActivity{//定义示波器界面的高度(单位为dip)privatestaticfinalfloatVISUALIZER_HEIGHT_DIP=50f;//定义一个媒体播放器privateMediaPlayerm</div> </li> <li><a href="/article/1902096650743115776.htm" title="Android 使用MediaPlayer播放音频详解" target="_blank">Android 使用MediaPlayer播放音频详解</a> <span class="text-muted">吴硼</span> <a class="tag" taget="_blank" href="/search/android/1.htm">android</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a> <div>目录一、官方资料二、简单介绍三、MediaPlayer使用1.创建MediaPlayer实例2.重要API3.状态图4.代码5.常用API6.辅助效果总结一、官方资料MediaPlayer概览https://developer.android.google.cn/guide/topics/media/mediaplayer?hl=zh_cnMediaPlayer文档https://develope</div> </li> <li><a href="/article/1902096398506061824.htm" title="The import android.media.audiofx.AcousticEchoCanceler cannot be resolved" target="_blank">The import android.media.audiofx.AcousticEchoCanceler cannot be resolved</a> <span class="text-muted">Dev_Hanyu</span> <a class="tag" taget="_blank" href="/search/Android%E5%BC%80%E5%8F%91/1.htm">Android开发</a> <div>RT.android.media.audiofx.AcousticEchoCanceler,AddedinAPIlevel16需要将App的目标SDK版本变成16选择项目右键properties,选择Android,然后勾选版本SDK-16.版本选择最好是看下工程的AndroidManifest.xml,选择一样的。target:SDK-16。成功!</div> </li> <li><a href="/article/1902096020553134080.htm" title="工程化与框架系列(9)--前端监控体系" target="_blank">工程化与框架系列(9)--前端监控体系</a> <span class="text-muted">一进制ᅟᅠ        ‌‍‎‏ </span> <a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF%E5%B7%A5%E7%A8%8B%E5%8C%96%E4%B8%8E%E6%A1%86%E6%9E%B6/1.htm">前端工程化与框架</a><a class="tag" taget="_blank" href="/search/%E5%89%8D%E7%AB%AF/1.htm">前端</a> <div>前端监控体系前端监控是现代Web应用不可或缺的组成部分,它帮助我们了解应用的运行状况、用户行为和潜在问题。本文将详细介绍如何构建一个完整的前端监控体系。监控体系概述小知识:前端监控体系通常包括性能监控、错误监控、用户行为分析和业务监控四大模块,通过这些数据可以全面了解应用的健康状况和用户体验。为什么需要前端监控在复杂的前端应用中,监控系统能够帮助我们:及时发现问题捕获JS运行时错误监控API请求异</div> </li> <li><a href="/article/1902095768328663040.htm" title="Spring Boot 整合 Redis 使用教程" target="_blank">Spring Boot 整合 Redis 使用教程</a> <span class="text-muted">小小鸭程序员</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/boot/1.htm">boot</a><a class="tag" taget="_blank" href="/search/mysql/1.htm">mysql</a><a class="tag" taget="_blank" href="/search/redis/1.htm">redis</a> <div>Redis是一种高性能的键值存储数据库,常用于缓存、会话管理和消息队列等场景。SpringBoot通过SpringDataRedis提供了简洁的整合方式。1.环境准备1.1添加依赖在pom.xml中添加Redis依赖(SpringBoot3.x):org.springframework.bootspring-boot-starter-data-redisredis.clientsjedis2.配置</div> </li> <li><a href="/article/1902095263724531712.htm" title="蓝桥杯Python赛道备赛——Day7:动态规划(基础)" target="_blank">蓝桥杯Python赛道备赛——Day7:动态规划(基础)</a> <span class="text-muted">SKY YEAM</span> <a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF%E5%A4%87%E8%B5%9B/1.htm">蓝桥杯备赛</a><a class="tag" taget="_blank" href="/search/%E8%93%9D%E6%A1%A5%E6%9D%AF/1.htm">蓝桥杯</a><a class="tag" taget="_blank" href="/search/python/1.htm">python</a><a class="tag" taget="_blank" href="/search/%E5%8A%A8%E6%80%81%E8%A7%84%E5%88%92/1.htm">动态规划</a> <div>本博客就蓝桥杯中所涉及的动态规划基础问题进行讲解,包括:递推、记忆化搜索、最长公共子序列(LCS)和最长上升子序列(LIS)。每一种动态规划问题都在给出定义的同时,给出了其求解方法的示例代码,以供低年级师弟师妹们学习和练习。前序知识:(1)Python基础语法动态规划(基础)一、递推(迭代法)二、记忆化搜索(递归+缓存)三、最长公共子序列(LCS)四、最长上升子序列(LIS)一、递推(迭代法)定义</div> </li> <li><a href="/article/126.htm" title="插入表主键冲突做更新" target="_blank">插入表主键冲突做更新</a> <span class="text-muted">a-john</span> <div>有以下场景: 用户下了一个订单,订单内的内容较多,且来自多表,首次下单的时候,内容可能会不全(部分内容不是必须,出现有些表根本就没有没有该订单的值)。在以后更改订单时,有些内容会更改,有些内容会新增。 问题: 如果在sql语句中执行update操作,在没有数据的表中会出错。如果在逻辑代码中先做查询,查询结果有做更新,没有做插入,这样会将代码复杂化。 解决: mysql中提供了一个sql语</div> </li> <li><a href="/article/253.htm" title="Android xml资源文件中@、@android:type、@*、?、@+含义和区别" target="_blank">Android xml资源文件中@、@android:type、@*、?、@+含义和区别</a> <span class="text-muted">Cb123456</span> <a class="tag" taget="_blank" href="/search/%40%2B/1.htm">@+</a><a class="tag" taget="_blank" href="/search/%40/1.htm">@</a><a class="tag" taget="_blank" href="/search/%3F/1.htm">?</a><a class="tag" taget="_blank" href="/search/%40*/1.htm">@*</a> <div>一.@代表引用资源 1.引用自定义资源。格式:@[package:]type/name android:text="@string/hello"   2.引用系统资源。格式:@android:type/name     android:textColor="@android:color/opaque_red"</div> </li> <li><a href="/article/380.htm" title="数据结构的基本介绍" target="_blank">数据结构的基本介绍</a> <span class="text-muted">天子之骄</span> <a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E7%BB%93%E6%9E%84/1.htm">数据结构</a><a class="tag" taget="_blank" href="/search/%E6%95%A3%E5%88%97%E8%A1%A8/1.htm">散列表</a><a class="tag" taget="_blank" href="/search/%E6%A0%91%E3%80%81%E5%9B%BE/1.htm">树、图</a><a class="tag" taget="_blank" href="/search/%E7%BA%BF%E6%80%A7%E7%BB%93%E6%9E%84/1.htm">线性结构</a><a class="tag" taget="_blank" href="/search/%E4%BB%B7%E6%A0%BC%E6%A0%87%E7%AD%BE/1.htm">价格标签</a> <div>数据结构的基本介绍 数据结构就是数据的组织形式,用一种提前设计好的框架去存取数据,以便更方便,高效的对数据进行增删查改。正确选择合适的数据结构,对软件程序的高效执行的影响作用不亚于算法的设计。此外,在计算机系统中数据结构的作用也是非同小可。例如常常在编程语言中听到的栈,堆等,就是经典的数据结构。   经典的数据结构大致如下:   一:线性数据结构 (1):列表 a</div> </li> <li><a href="/article/507.htm" title="通过二维码开放平台的API快速生成二维码" target="_blank">通过二维码开放平台的API快速生成二维码</a> <span class="text-muted">一炮送你回车库</span> <a class="tag" taget="_blank" href="/search/api/1.htm">api</a> <div> 现在很多网站都有通过扫二维码用手机连接的功能,联图网(http://www.liantu.com/pingtai/)的二维码开放平台开放了一个生成二维码图片的Api,挺方便使用的。闲着无聊,写了个前台快速生成二维码的方法。        html代码如下:(二维码将生成在这div下) ? 1  &nbs</div> </li> <li><a href="/article/634.htm" title="ImageIO读取一张图片改变大小" target="_blank">ImageIO读取一张图片改变大小</a> <span class="text-muted">3213213333332132</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/IO/1.htm">IO</a><a class="tag" taget="_blank" href="/search/image/1.htm">image</a><a class="tag" taget="_blank" href="/search/BufferedImage/1.htm">BufferedImage</a> <div> package com.demo; import java.awt.image.BufferedImage; import java.io.File; import java.io.IOException; import javax.imageio.ImageIO; /** * @Description 读取一张图片改变大小 * @author FuJianyon</div> </li> <li><a href="/article/761.htm" title="myeclipse集成svn(一针见血)" target="_blank">myeclipse集成svn(一针见血)</a> <span class="text-muted">7454103</span> <a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a><a class="tag" taget="_blank" href="/search/SVN/1.htm">SVN</a><a class="tag" taget="_blank" href="/search/MyEclipse/1.htm">MyEclipse</a> <div>                                 &n</div> </li> <li><a href="/article/888.htm" title="装箱与拆箱----autoboxing和unboxing" target="_blank">装箱与拆箱----autoboxing和unboxing</a> <span class="text-muted">darkranger</span> <a class="tag" taget="_blank" href="/search/J2SE/1.htm">J2SE</a> <div>4.2 自动装箱和拆箱 基本数据(Primitive)类型的自动装箱(autoboxing)、拆箱(unboxing)是自J2SE 5.0开始提供的功能。虽然为您打包基本数据类型提供了方便,但提供方便的同时表示隐藏了细节,建议在能够区分基本数据类型与对象的差别时再使用。 4.2.1 autoboxing和unboxing 在Java中,所有要处理的东西几乎都是对象(Object)</div> </li> <li><a href="/article/1015.htm" title="ajax传统的方式制作ajax" target="_blank">ajax传统的方式制作ajax</a> <span class="text-muted">aijuans</span> <a class="tag" taget="_blank" href="/search/Ajax/1.htm">Ajax</a> <div>//这是前台的代码 <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <% String path = request.getContextPath(); String basePath = request.getScheme()+</div> </li> <li><a href="/article/1142.htm" title="只用jre的eclipse是怎么编译java源文件的?" target="_blank">只用jre的eclipse是怎么编译java源文件的?</a> <span class="text-muted">avords</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/eclipse/1.htm">eclipse</a><a class="tag" taget="_blank" href="/search/jdk/1.htm">jdk</a><a class="tag" taget="_blank" href="/search/tomcat/1.htm">tomcat</a> <div>eclipse只需要jre就可以运行开发java程序了,也能自动 编译java源代码,但是jre不是java的运行环境么,难道jre中也带有编译工具? 还是eclipse自己实现的?谁能给解释一下呢问题补充:假设系统中没有安装jdk or jre,只在eclipse的目录中有一个jre,那么eclipse会采用该jre,问题是eclipse照样可以编译java源文件,为什么呢? &nb</div> </li> <li><a href="/article/1269.htm" title="前端模块化" target="_blank">前端模块化</a> <span class="text-muted">bee1314</span> <a class="tag" taget="_blank" href="/search/%E6%A8%A1%E5%9D%97%E5%8C%96/1.htm">模块化</a> <div>背景: 前端JavaScript模块化,其实已经不是什么新鲜事了。但是很多的项目还没有真正的使用起来,还处于刀耕火种的野蛮生长阶段。   JavaScript一直缺乏有效的包管理机制,造成了大量的全局变量,大量的方法冲突。我们多么渴望有天能像Java(import),Python (import),Ruby(require)那样写代码。在没有包管理机制的年代,我们是怎么避免所</div> </li> <li><a href="/article/1396.htm" title="处理百万级以上的数据处理" target="_blank">处理百万级以上的数据处理</a> <span class="text-muted">bijian1013</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/%E6%95%B0%E6%8D%AE%E5%BA%93/1.htm">数据库</a><a class="tag" taget="_blank" href="/search/%E5%A4%A7%E6%95%B0%E6%8D%AE/1.htm">大数据</a><a class="tag" taget="_blank" href="/search/%E6%9F%A5%E8%AF%A2/1.htm">查询</a> <div>一.处理百万级以上的数据提高查询速度的方法:        1.应尽量避免在 where 子句中使用!=或<>操作符,否则将引擎放弃使用索引而进行全表扫描。         2.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 o</div> </li> <li><a href="/article/1523.htm" title="mac 卸载 java 1.7 或更高版本" target="_blank">mac 卸载 java 1.7 或更高版本</a> <span class="text-muted">征客丶</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/OS/1.htm">OS</a> <div>卸载 java 1.7 或更高 sudo rm -rf /Library/Internet\ Plug-Ins/JavaAppletPlugin.plugin 成功执行此命令后,还可以执行 java 与 javac 命令 sudo rm -rf /Library/PreferencePanes/JavaControlPanel.prefPane 成功执行此命令后,还可以执行 java </div> </li> <li><a href="/article/1650.htm" title="【Spark六十一】Spark Streaming结合Flume、Kafka进行日志分析" target="_blank">【Spark六十一】Spark Streaming结合Flume、Kafka进行日志分析</a> <span class="text-muted">bit1129</span> <a class="tag" taget="_blank" href="/search/Stream/1.htm">Stream</a> <div>第一步,Flume和Kakfa对接,Flume抓取日志,写到Kafka中 第二部,Spark Streaming读取Kafka中的数据,进行实时分析   本文首先使用Kakfa自带的消息处理(脚本)来获取消息,走通Flume和Kafka的对接 1. Flume配置 1. 下载Flume和Kafka集成的插件,下载地址:https://github.com/beyondj2ee/f</div> </li> <li><a href="/article/1777.htm" title="Erlang vs TNSDL" target="_blank">Erlang vs TNSDL</a> <span class="text-muted">bookjovi</span> <a class="tag" taget="_blank" href="/search/erlang/1.htm">erlang</a> <div>      TNSDL是Nokia内部用于开发电信交换软件的私有语言,是在SDL语言的基础上加以修改而成,TNSDL需翻译成C语言得以编译执行,TNSDL语言中实现了异步并行的特点,当然要完整实现异步并行还需要运行时动态库的支持,异步并行类似于Erlang的process(轻量级进程),TNSDL中则称之为hand,Erlang是基于vm(beam)开发,</div> </li> <li><a href="/article/1904.htm" title="非常希望有一个预防疲劳的java软件, 预防过劳死和眼睛疲劳,大家一起努力搞一个" target="_blank">非常希望有一个预防疲劳的java软件, 预防过劳死和眼睛疲劳,大家一起努力搞一个</a> <span class="text-muted">ljy325</span> <a class="tag" taget="_blank" href="/search/%E4%BC%81%E4%B8%9A%E5%BA%94%E7%94%A8/1.htm">企业应用</a> <div> 非常希望有一个预防疲劳的java软件,我看新闻和网站,国防科技大学的科学家累死了,太疲劳,老是加班,不休息,经常吃药,吃药根本就没用,根本原因是疲劳过度。我以前做java,那会公司垃圾,老想赶快学习到东西跳槽离开,搞得超负荷,不明理。深圳做软件开发经常累死人,总有不明理的人,有个软件提醒限制很好,可以挽救很多人的生命。 相关新闻: (1)IT行业成五大疾病重灾区:过劳死平均37.9岁 </div> </li> <li><a href="/article/2031.htm" title="读《研磨设计模式》-代码笔记-原型模式" target="_blank">读《研磨设计模式》-代码笔记-原型模式</a> <span class="text-muted">bylijinnan</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a> <div>声明: 本文只为方便我个人查阅和理解,详细的分析以及源代码请移步 原作者的博客http://chjavach.iteye.com/ /** * Effective Java 建议使用copy constructor or copy factory来代替clone()方法: * 1.public Product copy(Product p){} * 2.publi</div> </li> <li><a href="/article/2158.htm" title="配置管理---svn工具之权限配置" target="_blank">配置管理---svn工具之权限配置</a> <span class="text-muted">chenyu19891124</span> <a class="tag" taget="_blank" href="/search/SVN/1.htm">SVN</a> <div>今天花了大半天的功夫,终于弄懂svn权限配置。下面是今天收获的战绩。 安装完svn后就是在svn中建立版本库,比如我本地的是版本库路径是C:\Repositories\pepos。pepos是我的版本库。在pepos的目录结构 pepos    component    webapps 在conf里面的auth里赋予的权限配置为 [groups]</div> </li> <li><a href="/article/2285.htm" title="浅谈程序员的数学修养" target="_blank">浅谈程序员的数学修养</a> <span class="text-muted">comsci</span> <a class="tag" taget="_blank" href="/search/%E8%AE%BE%E8%AE%A1%E6%A8%A1%E5%BC%8F/1.htm">设计模式</a><a class="tag" taget="_blank" href="/search/%E7%BC%96%E7%A8%8B/1.htm">编程</a><a class="tag" taget="_blank" href="/search/%E7%AE%97%E6%B3%95/1.htm">算法</a><a class="tag" taget="_blank" href="/search/%E9%9D%A2%E8%AF%95/1.htm">面试</a><a class="tag" taget="_blank" href="/search/%E6%8B%9B%E8%81%98/1.htm">招聘</a> <div>                                 浅谈程序员的数学修养 </div> </li> <li><a href="/article/2412.htm" title="批量执行 bulk collect与forall用法" target="_blank">批量执行 bulk collect与forall用法</a> <span class="text-muted">daizj</span> <a class="tag" taget="_blank" href="/search/oracle/1.htm">oracle</a><a class="tag" taget="_blank" href="/search/sql/1.htm">sql</a><a class="tag" taget="_blank" href="/search/bulk+collect/1.htm">bulk collect</a><a class="tag" taget="_blank" href="/search/forall/1.htm">forall</a> <div>BULK COLLECT 子句会批量检索结果,即一次性将结果集绑定到一个集合变量中,并从SQL引擎发送到PL/SQL引擎。通常可以在SELECT INTO、 FETCH INTO以及RETURNING INTO子句中使用BULK COLLECT。本文将逐一描述BULK COLLECT在这几种情形下的用法。     有关FORALL语句的用法请参考:批量SQL之 F</div> </li> <li><a href="/article/2539.htm" title="Linux下使用rsync最快速删除海量文件的方法" target="_blank">Linux下使用rsync最快速删除海量文件的方法</a> <span class="text-muted">dongwei_6688</span> <a class="tag" taget="_blank" href="/search/OS/1.htm">OS</a> <div>1、先安装rsync:yum install rsync 2、建立一个空的文件夹:mkdir /tmp/test 3、用rsync删除目标目录:rsync --delete-before -a -H -v --progress --stats /tmp/test/ log/这样我们要删除的log目录就会被清空了,删除的速度会非常快。rsync实际上用的是替换原理,处理数十万个文件也是秒删。 </div> </li> <li><a href="/article/2666.htm" title="Yii CModel中rules验证规格" target="_blank">Yii CModel中rules验证规格</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/rules/1.htm">rules</a><a class="tag" taget="_blank" href="/search/yii/1.htm">yii</a><a class="tag" taget="_blank" href="/search/validate/1.htm">validate</a> <div>Yii cValidator主要用法分析:  yii验证rulesit 分类: Yii yii的rules验证 cValidator主要属性 attributes ,builtInValidators,enableClientValidation,message,on,safe,skipOnError  </div> </li> <li><a href="/article/2793.htm" title="基于vagrant的redis主从实验" target="_blank">基于vagrant的redis主从实验</a> <span class="text-muted">dcj3sjt126com</span> <a class="tag" taget="_blank" href="/search/vagrant/1.htm">vagrant</a> <div>平台: Mac 工具: Vagrant 系统: Centos6.5 实验目的: Redis主从   实现思路 制作一个基于sentos6.5, 已经安装好reids的box, 添加一个脚本配置从机, 然后作为后面主机从机的基础box   制作sentos6.5+redis的box   mkdir vagrant_redis cd vagrant_</div> </li> <li><a href="/article/2920.htm" title="Memcached(二)、Centos安装Memcached服务器" target="_blank">Memcached(二)、Centos安装Memcached服务器</a> <span class="text-muted">frank1234</span> <a class="tag" taget="_blank" href="/search/centos/1.htm">centos</a><a class="tag" taget="_blank" href="/search/memcached/1.htm">memcached</a> <div>一、安装gcc rpm和yum安装memcached服务器连接没有找到,所以我使用的是make的方式安装,由于make依赖于gcc,所以要先安装gcc 开始安装,命令如下,[color=red][b]顺序一定不能出错[/b][/color]: 建议可以先切换到root用户,不然可能会遇到权限问题:su root 输入密码...... rpm -ivh kernel-head</div> </li> <li><a href="/article/3047.htm" title="Remove Duplicates from Sorted List" target="_blank">Remove Duplicates from Sorted List</a> <span class="text-muted">hcx2013</span> <a class="tag" taget="_blank" href="/search/remove/1.htm">remove</a> <div>Given a sorted linked list, delete all duplicates such that each element appear only once. For example,Given 1->1->2, return 1->2.Given 1->1->2->3->3, return&</div> </li> <li><a href="/article/3174.htm" title="Spring4新特性——JSR310日期时间API的支持" target="_blank">Spring4新特性——JSR310日期时间API的支持</a> <span class="text-muted">jinnianshilongnian</span> <a class="tag" taget="_blank" href="/search/spring4/1.htm">spring4</a> <div>Spring4新特性——泛型限定式依赖注入 Spring4新特性——核心容器的其他改进 Spring4新特性——Web开发的增强 Spring4新特性——集成Bean Validation 1.1(JSR-349)到SpringMVC  Spring4新特性——Groovy Bean定义DSL Spring4新特性——更好的Java泛型操作API  Spring4新</div> </li> <li><a href="/article/3301.htm" title="浅谈enum与单例设计模式" target="_blank">浅谈enum与单例设计模式</a> <span class="text-muted">247687009</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/%E5%8D%95%E4%BE%8B/1.htm">单例</a> <div>在JDK1.5之前的单例实现方式有两种(懒汉式和饿汉式并无设计上的区别故看做一种),两者同是私有构 造器,导出静态成员变量,以便调用者访问。 第一种 package singleton; public class Singleton { //导出全局成员 public final static Singleton INSTANCE = new S</div> </li> <li><a href="/article/3428.htm" title="使用switch条件语句需要注意的几点" target="_blank">使用switch条件语句需要注意的几点</a> <span class="text-muted">openwrt</span> <a class="tag" taget="_blank" href="/search/c/1.htm">c</a><a class="tag" taget="_blank" href="/search/break/1.htm">break</a><a class="tag" taget="_blank" href="/search/switch/1.htm">switch</a> <div>1. 当满足条件的case中没有break,程序将依次执行其后的每种条件(包括default)直到遇到break跳出 int main() { int n = 1; switch(n) { case 1: printf("--1--\n"); default: printf("defa</div> </li> <li><a href="/article/3555.htm" title="配置Spring Mybatis JUnit测试环境的应用上下文" target="_blank">配置Spring Mybatis JUnit测试环境的应用上下文</a> <span class="text-muted">schnell18</span> <a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/mybatis/1.htm">mybatis</a><a class="tag" taget="_blank" href="/search/JUnit/1.htm">JUnit</a> <div>Spring-test模块中的应用上下文和web及spring boot的有很大差异。主要试下来差异有: 单元测试的app context不支持从外部properties文件注入属性 @Value注解不能解析带通配符的路径字符串 解决第一个问题可以配置一个PropertyPlaceholderConfigurer的bean。 第二个问题的具体实例是:    </div> </li> <li><a href="/article/3682.htm" title="Java 定时任务总结一" target="_blank">Java 定时任务总结一</a> <span class="text-muted">tuoni</span> <a class="tag" taget="_blank" href="/search/java/1.htm">java</a><a class="tag" taget="_blank" href="/search/spring/1.htm">spring</a><a class="tag" taget="_blank" href="/search/timer/1.htm">timer</a><a class="tag" taget="_blank" href="/search/quartz/1.htm">quartz</a><a class="tag" taget="_blank" href="/search/timertask/1.htm">timertask</a> <div> Java定时任务总结  一.从技术上分类大概分为以下三种方式:  1.Java自带的java.util.Timer类,这个类允许你调度一个java.util.TimerTask任务;   说明:    java.util.Timer定时器,实际上是个线程,定时执行TimerTask类 &</div> </li> <li><a href="/article/3809.htm" title="一种防止用户生成内容站点出现商业广告以及非法有害等垃圾信息的方法" target="_blank">一种防止用户生成内容站点出现商业广告以及非法有害等垃圾信息的方法</a> <span class="text-muted">yangshangchuan</span> <a class="tag" taget="_blank" href="/search/rank/1.htm">rank</a><a class="tag" taget="_blank" href="/search/%E7%9B%B8%E4%BC%BC%E5%BA%A6%E8%AE%A1%E7%AE%97/1.htm">相似度计算</a><a class="tag" taget="_blank" href="/search/%E6%96%87%E6%9C%AC%E7%9B%B8%E4%BC%BC%E5%BA%A6/1.htm">文本相似度</a><a class="tag" taget="_blank" href="/search/%E8%AF%8D%E8%A2%8B%E6%A8%A1%E5%9E%8B/1.htm">词袋模型</a><a class="tag" taget="_blank" href="/search/%E4%BD%99%E5%BC%A6%E7%9B%B8%E4%BC%BC%E5%BA%A6/1.htm">余弦相似度</a> <div>本文描述了一种在ITEYE博客频道上面出现的新型的商业广告形式及其应对方法,对于其他的用户生成内容站点类型也具有同样的适用性。   最近在ITEYE博客频道上面出现了一种新型的商业广告形式,方法如下:     1、注册多个账号(一般10个以上)。     2、从多个账号中选择一个账号,发表1-2篇博文</div> </li> </ul> </div> </div> </div> <div> <div class="container"> <div class="indexes"> <strong>按字母分类:</strong> <a href="/tags/A/1.htm" target="_blank">A</a><a href="/tags/B/1.htm" target="_blank">B</a><a href="/tags/C/1.htm" target="_blank">C</a><a href="/tags/D/1.htm" target="_blank">D</a><a href="/tags/E/1.htm" target="_blank">E</a><a href="/tags/F/1.htm" target="_blank">F</a><a href="/tags/G/1.htm" target="_blank">G</a><a href="/tags/H/1.htm" target="_blank">H</a><a href="/tags/I/1.htm" target="_blank">I</a><a href="/tags/J/1.htm" target="_blank">J</a><a href="/tags/K/1.htm" target="_blank">K</a><a href="/tags/L/1.htm" target="_blank">L</a><a href="/tags/M/1.htm" target="_blank">M</a><a href="/tags/N/1.htm" target="_blank">N</a><a href="/tags/O/1.htm" target="_blank">O</a><a href="/tags/P/1.htm" target="_blank">P</a><a href="/tags/Q/1.htm" target="_blank">Q</a><a href="/tags/R/1.htm" target="_blank">R</a><a href="/tags/S/1.htm" target="_blank">S</a><a href="/tags/T/1.htm" target="_blank">T</a><a href="/tags/U/1.htm" target="_blank">U</a><a href="/tags/V/1.htm" target="_blank">V</a><a href="/tags/W/1.htm" target="_blank">W</a><a href="/tags/X/1.htm" target="_blank">X</a><a href="/tags/Y/1.htm" target="_blank">Y</a><a href="/tags/Z/1.htm" target="_blank">Z</a><a href="/tags/0/1.htm" target="_blank">其他</a> </div> </div> </div> <footer id="footer" class="mb30 mt30"> <div class="container"> <div class="footBglm"> <a target="_blank" href="/">首页</a> - <a target="_blank" href="/custom/about.htm">关于我们</a> - <a target="_blank" href="/search/Java/1.htm">站内搜索</a> - <a target="_blank" href="/sitemap.txt">Sitemap</a> - <a target="_blank" href="/custom/delete.htm">侵权投诉</a> </div> <div class="copyright">版权所有 IT知识库 CopyRight © 2000-2050 E-COM-NET.COM , All Rights Reserved. <!-- <a href="https://beian.miit.gov.cn/" rel="nofollow" target="_blank">京ICP备09083238号</a><br>--> </div> </div> </footer> <!-- 代码高亮 --> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shCore.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shLegacy.js"></script> <script type="text/javascript" src="/static/syntaxhighlighter/scripts/shAutoloader.js"></script> <link type="text/css" rel="stylesheet" href="/static/syntaxhighlighter/styles/shCoreDefault.css"/> <script type="text/javascript" src="/static/syntaxhighlighter/src/my_start_1.js"></script> </body> </html>