小编hal*_*oei的帖子

Laravel:防止 Updated_at 在记录创建时填充

在 Laravel >=5.8 的最新版本中,我注意到当您创建新模型记录时,updated_at表中的列会自动填充与 相同的值created_at。虽然填写是有意义的,created_atModel::create()填写的意义updated_at何在?NULL在我看来,保留Laravel 5.8 之前的样子更有意义

是否有已知的简单方法来禁用这种新行为?

php laravel eloquent

3
推荐指数
1
解决办法
1765
查看次数

使用 StAX 读取所有文本元素

我需要解析一个 xml 文件,无论其中的标签如何,并读取其所有叶子的文本(仅限文本元素)。我正在使用 StAX,但似乎无法提前知道元素是否仅为文本(因此 getElementText 为 not leave 元素引发异常)。所以我决定使用过滤器,只过滤标签元素,并以这种方式迭代抛出文档:

InputStream in = null;
    try {
        in = new FileInputStream("file.xml");
        DatiEstratti de = DatiEstratti.getInstance();

        // Processamento ad eventi
        XMLInputFactory factory = (XMLInputFactory) XMLInputFactory.newInstance();

        XMLEventReader eventReader = factory.createXMLEventReader(in);
        // usa il filtro per filtrare solo i tag element
        eventReader = factory.createFilteredReader(eventReader, new ElementOnlyFilter());

        while (eventReader.hasNext()) {

            XMLEvent event = eventReader.nextEvent();

            if (event.getEventType() == XMLStreamConstants.START_ELEMENT) {
                StartElement startElement = event.asStartElement();

                XMLEvent peekEvent = eventReader.peek();
                if(peekEvent.isEndElement()){
                    // questa è la prima volta che viene …
Run Code Online (Sandbox Code Playgroud)

java xml stax xml-parsing

1
推荐指数
1
解决办法
6393
查看次数

fgetcsv()注意:"escape必须是单个字符",带'μ'

当我使用fgetcsv()具有escape= µ这样

$filename = 'test.csv';
$handle = fopen($filename, 'r');
$a = fgetcsv($handle, 0, ';', '"', 'µ');
Run Code Online (Sandbox Code Playgroud)

php输出通知

注意:fgetcsv()[function.fgetcsv]:escape必须是第23行的myPhpFile.php中的单个字符

为什么?

php

1
推荐指数
1
解决办法
975
查看次数

如何通过验证规则中的键过滤请求数据?

我正在制作一个多步骤的注册表格.在第一步中,我需要收集first_name,last_namedob,然后创建一个Customer对象,只有这三个领域:

// RegistrationController.php
public function store_profile(Request $request) {
    $rules = ['first_name' => '...', 'last_name' => '...', 'dob' => '...'];
    $this->validate($request, $rules);

    Customer::create($request);
}
Run Code Online (Sandbox Code Playgroud)

的问题是,其他领域,例如address,city,state等是也可填充的:

// Customer.php
protected $fillable = ['first_name', 'last_name', 'dob', 'address', 'city', 'state', ...];
Run Code Online (Sandbox Code Playgroud)

我打算在注册的第二步(in public function store_address())中收集它们,但没有什么能阻止用户将POST这些附加字段添加到第一步:

// RegistrationController.php
public function store_profile(Request $request) {
    $rules = ['first_name' => '...', 'last_name' => '...', 'dob' => '...'];
    $this->validate($request, …
Run Code Online (Sandbox Code Playgroud)

php validation laravel laravel-5.3

1
推荐指数
1
解决办法
2961
查看次数

标签 统计

php ×3

laravel ×2

eloquent ×1

java ×1

laravel-5.3 ×1

stax ×1

validation ×1

xml ×1

xml-parsing ×1