今天OJ升级的学习内容总结

在OJ的后台数据上传那儿,出现了小问题,主要是读取mysql的字符串长度有限制

而且,OJ测试数据经常需要大数据,例如4M大小,甚至更大,因此,决定改成文件传输来代替POST

这里又出现了些新问题,主要是因为php的默认内存受到限制,通过ini_set修改'memory_limit'参数

下面是新学到的一些php知识:

1.文件读取:

file_put_contents(file,data,mode,context)
参数描述
file 必需。规定要写入数据的文件。如果文件不存在,则创建一个新文件。
data 可选。规定要写入文件的数据。可以是字符串、数组或数据流。
mode

可选。规定如何打开/写入文件。可能的值:

  • FILE_USE_INCLUDE_PATH
  • FILE_APPEND
  • LOCK_EX
context

可选。规定文件句柄的环境。

context 是一套可以修改流的行为的选项。若使用 null,则忽略。

file_get_contents(path,include_path,context,start,max_length)
参数描述
path 必需。规定要读取的文件。
include_path 可选。如果也想在 include_path 中搜寻文件的话,可以将该参数设为 "1"。
context

可选。规定文件句柄的环境。

context 是一套可以修改流的行为的选项。若使用 null,则忽略。

start 可选。规定在文件中开始读取的位置。该参数是 PHP 5.1 新加的。
max_length 可选。规定读取的字节数。该参数是 PHP 5.1 新加的。

 clearstatcache() 函数清除文件状态缓存。

会进行缓存的函数,即受 clearstatcache() 函数影响的函数:

  • stat()
  • lstat()
  • file_exists()
  • is_writable()
  • is_readable()
  • is_executable()
  • is_file()
  • is_dir()
  • is_link()
  • filectime()
  • fileatime()
  • filemtime()
  • fileinode()
  • filegroup()
  • fileowner()
  • filesize()
  • filetype()
  • fileperms()
filesize(filename)

提示:本函数的结果会被缓存。请使用 clearstatcache() 来清除缓存。

2.String函数

chr() 从指定的 ASCII 值返回字符。


ini_set('memory_limit', '30M');

暂时记录到这儿。

之前OJ做了很久,但是一直没有记录什么东西,后面有时间,我都将会记录在博客里面。

原文地址:https://www.cnblogs.com/AkQuan/p/2846989.html