php 中的 ?: 和 ?? 使用上有区别, ?: 是运算符,而 ?? 是语法糖。
PHP中的嵌套或内部类
我知道C,Java和甚至Ruby(和可能的其他编程语言)允许嵌套/内部类在主类中,允许使代码更面向对象和组织。
在PHP中,我想做一些这样的事情:
<?php
public class User {
public $userid;
public $username;
private $password;
public class UserProfile {
// Some code here
}
private class UserHistory {
// Some code here
}
}
?>
这是可能在PHP吗?我该如何实现呢?如果这是不可能的,未来的PHP版本可能支持嵌套类?
oracle 对汉字 order by 排序
- 使用拼音排序
select * from t order by nlssort(field,'NLS_SORT=SCHINESE_PINYIN_M');
- 使用笔画排序
select * from t order by nlssort(field,'NLS_SORT=SCHINESE_STROKE_M');
- 使用偏旁部首排序
select * from t order by nlssort(field,'NLS_SORT=SCHINESE_RADICAL_M');
laravel 在 seeder 中使用 faker
use Illuminate\Database\Seeder;
use App\Comment;
class CommentsTableSeeder extends Seeder
{
/**
* Run the database seeds.
*
* @return void
*/
public function run()
{
// Let's truncate our existing records to start from scratch.
Comment::truncate();
$faker = \Faker\Factory::create();
// And now, let's create a few articles in our database:
for ($i = 0; $i < 100; $i++) {
Comment::create([
'post_id' => random_int(1, 50),
'user_id' => random_int(1, 14),
'status' => random_int(0, 1),
'content' => $faker->sentence,
]);
}
}
}
在Linux Ubuntu 18.04上安装.NET Core SDK
注册Microsoft密钥和订阅源
在安装.NET之前,您需要注册Microsoft密钥,注册产品存储库并安装所需的依赖项。这只需要每台机器完成一次。
打开命令提示符并运行以下命令:
wget -q https://packages.microsoft.com/config/ubuntu/18.04/packages-microsoft-prod.deb
sudo dpkg -i packages-microsoft-prod.deb
安装.NET SDK
更新可用于安装的产品,然后安装.NET SDK。
在命令提示符中,运行以下命令:
sudo apt-get install apt-transport-https
sudo apt-get update
sudo apt-get install dotnet-sdk-2.1
更多版本:https://www.microsoft.com/net/download/linux-package-manager/rhel/sdk-current
在 laravel 中获取表前缀的方法
有3种方法:
DB::getConfig('prefix');
DB::connection()->getTablePrefix();
Config::get('database.connections.mysql.prefix');
nginx 出现413 Request Entity Too Large问题的解决方法
使用php上传文件出现 nginx: 413 Request Entity Too Large 错误,解决方法如下:
- php默认的文件上传是2M,打开php.ini,把
upload_max_filesize和post_max_size修改为20M(或更大),然后重启php-fpm。 - nginx默认上传文件的大小是1M,打开nginx.conf(路径一般是
/etc/nginx/nginx.conf),在http{}段中加入client_max_body_size 20m;20m为允许最大上传的大小,保存后重启nginx。
Markdown代码高亮支持的语言
| 名称 | 关键字 |
|---|---|
| AppleScript | applescript |
| ActionScript 3.0 | actionscript3, as3 |
| Shell | bash, shell |
| ColdFusion | coldfusion, cf |
| C | cpp, c |
| C# | c#, c-sharp, csharp |
| CSS | css |
| Delphi | delphi, pascal, pas |
| diff&patch | diff patch |
| Erlang | erl, erlang |
| Groovy | groovy |
| Java | java |
| JavaFX | jfx, javafx |
| JavaScript | js, jscript, javascript |
| Perl | perl, pl, Perl |
| PHP | php |
| text | text, plain |
| Python | py, python |
| Ruby | ruby, rails, ror, rb |
| SASS&SCSS | sass, scss |
| Scala | scala |
| SQL | sql |
| Visual Basic | vb, vbnet |
| XML | xml, xhtml, xslt, html |
| Objective C | objc, obj-c |
| F# | f#, f-sharp, fsharp |
| R | r, s, splus |
| matlab | matlab |
| swift | swift |
| GO | go, golang |
VS Code中Instant Markdown不支持直接用 C#,而要用 csharp 才能高亮C#代码。
安装和配置 snmpd 的方法
sudo apt-get install snmpd /*安装snmp服务*/
sudo vi /etc/snmp/snmpd.conf /*编辑snmp配置文件*/
在这里使用默认团体名public,实际环境中建议更改。
- 将原有
agentAddress udp:127.0.0.1:161改为
agentAddress 192.168.1.9192.168.1.9为本机IP,即监控服务器要监控的主机IP
在 linux 中卸载 vmware workstation
vmware-installer -u vmware-workstation