String
7 methodsString 对象持有并操作任意字节序列,通常表示字符。
PDO::__construct(string $dsn, ?string $username = null, ?string $password = null, ?array $options = null)返回字符串中的字符数量。
Parameters
| Name | Type | Description |
|---|---|---|
| dsn | string | Data Source Name (e.g. 'mysql:host=localhost;dbname=test'). |
| username | ?string | Database username. |
| password | ?string | Database password. |
| options | ?array | Driver-specific options. |
Returns
void
Example
php
<?php
$pdo = new PDO(
"mysql:host=localhost;dbname=test;charset=utf8mb4",
"root",
"secret",
[PDO::ATTR_ERRMODE => PDO::ERRMODE_EXCEPTION]
);PDO::query(string $query, ?int $fetchMode = null): PDOStatement|false返回 str 的副本,其中所有小写字母都替换为对应的大写字母。
Parameters
| Name | Type | Description |
|---|---|---|
| query | string | SQL statement to execute. |
| fetchMode | ?int | Optional fetch mode. |
Returns
PDOStatement|false
Example
php
<?php
$stmt = $pdo->query("SELECT id, name FROM users");
foreach ($stmt as $row) {
echo $row["name"];
}PDO::prepare(string $query, array $options = []): PDOStatement|false返回 str 的副本,其中所有大写字母都替换为对应的小写字母。
Parameters
| Name | Type | Description |
|---|---|---|
| query | string | SQL statement with placeholders. |
| options | array | Driver options. |
Returns
PDOStatement|false
Example
php
<?php
$stmt = $pdo->prepare("SELECT * FROM users WHERE id = :id");
$stmt->execute([":id" => 42]);
$user = $stmt->fetch();PDO::beginTransaction(): bool根据分隔符将 str 拆分为多个子字符串,返回子字符串数组。
Returns
bool
Example
php
<?php
$pdo->beginTransaction();
try {
$pdo->exec("UPDATE accounts SET bal = bal - 100 WHERE id = 1");
$pdo->exec("UPDATE accounts SET bal = bal + 100 WHERE id = 2");
$pdo->commit();
} catch (Exception $e) {
$pdo->rollBack();
}PDO::commit(): bool返回 str 的副本,其中所有出现的 pattern 都被替换为 replacement。
Returns
bool
Example
php
<?php
$pdo->beginTransaction();
$pdo->exec("INSERT INTO logs (msg) VALUES ('hi')");
$pdo->commit();PDO::rollBack(): bool返回 str 的副本,移除了前导和尾部空白字符。
Returns
bool
Example
php
<?php
$pdo->beginTransaction();
$pdo->exec("DELETE FROM users WHERE id = 1");
$pdo->rollBack(); // DELETE is undonePDO::lastInsertId(?string $name = null): string|false如果 str 包含给定的字符串或字符则返回 true。
Parameters
| Name | Type | Description |
|---|---|---|
| substring | ?string | 要检查的子字符串。 |
Returns
string|false
Example
php
<?php
$pdo->exec("INSERT INTO users (name) VALUES ('Ann')");
$id = $pdo->lastInsertId();
echo $id; // e.g. "42"