اذهب إلى المحتوى

السؤال

نشر

السلام عليكم

كيف يمكننى تحويل المصفوفة arr1 والتى تحتوى على روابط فقط إلى الشكل الذى تبدو عليه فى المتغير  arr2

$arr1 = ["https://google.com", "https://facebook.com", "https://twitter.com"];

// $arr2 = "[\"https://google.com\", \"https://facebook.com\", \"https://twitter.com\"]"

 

Recommended Posts

  • 1
نشر (معدل)

هل تقصد تحويلها إلى String عن طريق json_encode؟
تمكنك دالة json_encode من تحويل Data Structures من PHP إلى JSON.
مثال:
 

<?php

$links = [ "https://google.com", "https://facebook.com", "https://twitter.com" ];

echo json_encode( $links );

أيضاً، يمكنك عكس ذلك عن طريق json_decode.

تم التعديل في بواسطة إسلام عبدالعزيز
إضافة مثال
  • 1
نشر (معدل)

إذا كنت لا تريد تخطي العلامات، يمكنك إستخدام htmlspecialchars.
مثال:
 

<?php

$arr = [
	"https://google.com",
	"https://facebook.com",
	"https://twitter.com"
];

$stringified = htmlspecialchars( json_encode($arr), ENT_QUOTES, 'UTF-8' );
var_dump( $stringified ); // الشكل المطلوب

هذه الصفحة تحتوي على جدول به جميع العلامات التي يمكن حفظها: https://www.php.net/manual/en/function.htmlspecialchars.php

تم التعديل في بواسطة إسلام عبدالعزيز
  • 1
نشر

يمكنك إضافة ذلك عن طريق برمجة دالة تقوم بإضافة ما تريد لكل عنصر بالمصفوفة ومن ثم تمريرها إلى دالة array_map 

$arr1 = ["https://google.com", "https://facebook.com", "https://twitter.com"];
function addSlashesToArray($str)
{
    return "\\".$str."\\";
}
$newArray = array_map("addSlashesToArray", $arr1);//array with the new values
print_r ($newArray);

طبعا دالة array_map  دالة أخرى يحددها المستخدم على كل عنصر موجود في المصفوفات الممررة.

والنتيجة تكون 

Array ( [0] => \https://google.com\ [1] => \https://facebook.com\ [2] => \https://twitter.com\ )

 

 

23.PNG

  • 1
نشر

الدالة addslashes التي تضيف escape letter قبل "

الدالة substr لقص آخر محرفين من السلسلة والناتجين من الحلقة الفراغ و , أي " ,"

<!DOCTYPE html>
<html>
<body>

<?php

$arr1 = ["https://google.com", "https://facebook.com", "https://twitter.com"];

$arr2 = "\"[";

foreach ($arr1 as $str) {
    $arr2 .= addslashes('"'. $str . '"' . ', ');
}

$arr2 = substr($arr2, 0, -2);

$arr2 .= "]\"";

echo $arr2;
?> 

</body>
</html>

 

انضم إلى النقاش

يمكنك أن تنشر الآن وتسجل لاحقًا. إذا كان لديك حساب، فسجل الدخول الآن لتنشر باسم حسابك.

زائر
أجب على هذا السؤال...

×   لقد أضفت محتوى بخط أو تنسيق مختلف.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   جرى استعادة المحتوى السابق..   امسح المحرر

×   You cannot paste images directly. Upload or insert images from URL.

  • إعلانات

  • تابعنا على



×
×
  • أضف...