返回文章

文章 2018

PHP

早期 PHP 工作笔记

PHPNotebookCommand
本文目录11
  1. replace map string
  2. Magento pwd
  3. format number
  4. vardump to js
  5. enable php error reporting
  6. write log
  7. get session by id
  8. make time
  9. php receive post with content type json
  10. php random string
  11. net::ERRINCOMPLETECHUNKEDENCODING

replace map string

text
str_replace([" ", "#"],"+",$mapAddress)

Magento pwd

text
/var/www/api/app/code/local/Rs/Ext/Model/Api2

/var/www/api/app/code/core/Mage/Api2/Model/Server.php
if($e->getMessage()=='Invalid request method'){
   $response->setHeader('HTTP/1.0', 204, true);
   $response->sendResponse();
}

local/Rs/Ext/Model/Api2/Login2/Rest/Guest/V1.php
local/Rs/Ext/Model/Api2/Login2.php

grep -r 'ordlst' app/code
vig app/code/local/Rs/Ext/etc/api2.xml
vig app/code/local/Rs/Ext/Model/Api2/Orderhistorylist/Rest/Customer/V1.php

grep -r 'preview' app/code/local/Rs
vig app/code/local/Rs/Ext/etc/api2.xml
vig app/code/local/Rs/Ext/Model/Api2/Productreview2/Rest/Customer/V1.php
vig app/code/local/Rs/Ext/Model/Api2/Productreview2/Rest/Guest/V1.php
php n98-magerun.phar dev:console

/var/www/api/var/log/

format number

text
$mins = sprintf("%02d", $mins-60);
 number_format($grandtotal,2)

sprintf("%02d", $mins-60);

var_dump to js

text
echo '<script type="text/javascript">console.log('.json_encode($postBody).')</script>';

enable php error reporting

text
error_reporting(E_ERROR);
error_reporting(E_ALL | E_STRICT);
error_reporting(-1);
ini_set('display_errors', 1);

write log

text
file_put_contents("oauth.log", API[ACTION[$action]]."\n", FILE_APPEND | LOCK_EX);

get session by id

text
session_id($_GET['session_id']);
session_start();
//var_dump(session_id());

make time

text
$selectedTime = "9:15:00";
$endTime = strtotime("+15 minutes", strtotime($selectedTime));
echo date(‘H:i:s', $endTime);

$time = strtotime($dateWithTimeZone);
$time = strtotime($dateInUTC.' UTC');
$dateInLocal = date("Y-m-d H:i:s", $time);

php receive post with content type json

text
if($_SERVER['CONTENT_TYPE']=="application/json"){
  $postObj = json_decode(file_get_contents("php://input"), true);
} else {
  $postObj = $_POST;
}

php random string

text
$randomString = substr(str_shuffle(str_repeat($x='0123456789abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ', ceil($randomStringLength/strlen($x)) )),1,$randomStringLength);

net::ERR_INCOMPLETE_CHUNKED_ENCODING

text
//http://blog.csdn.net/p569354158/article/details/8120177
//buffer flow output_buffering, fastcgi_buffer,  proxy_buffering

ob_end_flush(); // 冲刷出(送出)输出缓冲区内容并关闭缓冲
// ob_end_clean() //得到当前缓冲区的内容并删除当前输出缓。
// ob_get_status(true) //得到所有输出缓冲区的状态
// ob_get_level() //返回输出缓冲机制的嵌套级别
ob_implicit_flush();//disable system output buffer (don't need to call flush())
ini_set('output_buffering', 1024 * 4); //set output buffer size
header('X-Accel-Buffering: no'); // disable nginx proxy buffer, and make sure nginx config didn't proxy_ignore_headers to ignore this setting

// V_1.2
//ob_start(); //this function will make ob_flush() and flush() not working (don't know reason)
echo str_repeat('a', 1024*4); //for fastcgi_buffer, becasue we cannot use flush() to clear fastcgi_buffer

echo '<br>php max_execution_time:'.json_encode(ini_get('max_execution_time'));
echo '<br>php safe_mode:'.json_encode(ini_get('safe_mode'));
for($i=0; $i<40; $i++){
  echo "<br>{$i}<br>";
  //ob_flush(); //no need if userspace output buffer is disabled
  //flush(); //no need if system output buffer is disabled
  sleep(1);
}

//php max_execution_time
//php-fpm request_terminate_timeout
//nginx: gzip, chunked_transfer_encoding, fastcgi_read_timeout, proxy_cache_path
返回首页
上一篇OAuth下一篇Building a Debugger- Code Analysis

Discussion

留言与讨论

想法、补充和不同意见都欢迎。