1. Go to this page and download the library: Download markhuot/craft-data library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
markhuot / craft-data example snippets
class EntryController extends Controller
{
#[BodyParams(EntryUpdateParams::class)]
function actionUpdate()
{
// Now $this->getData() will return an `EntryUpdateParams` with all the
// data copied over from the POST in to the class
}
}
class EntryUpdateParams
{
public int $elementId;
public ?string $title;
public ?string $slug;
function getElement()
{
return \Craft::$app->elements->getElementById($this->elementId);
}
}
use Symfony\Component\Validator\Constraints as Assert;
class EntryUpdateParams
{
#[Assert\NotNull]
public int $elementId;
#[Assert\NotEmpty]
public string $title;
#[Assert\Regex('/[a-z]0-9_-/i')]
public ?string $slug;
function getElement()
{
return \Craft::$app->elements->getElementById($this->elementId);
}
}
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.